Backend frameworks
Backend frameworks
Welkom bij het vak Backend Frameworks! In dit opleidingsonderdeel leer je hoe je Next.js kan gebruiken om een React applicatie op een server te renderen zodat de gebruiker sneller een resultaat te zien krijgt.
We bespreken de verschillen tussen server components en client components en hoe je deze kan combineren. Daarnaast gebruiken we Prisma om te communiceren met een database en Zod om server side validatie te doen. We bouwen twee verschillende manieren om de database aan te spreken, via een gewone HTML (React) pagina en via een JSON API.
De webapplicatie wordt beschermd met user-password authenticatie met klassieke session tokens en de API wordt afgeschermd met JSON Web Tokens.
We sluiten de theorie af met een les over testing.
Lesverloop
De lessen worden gegeven op basis van praktische voorbeelden waarin de nieuwe concepten worden toegepast. Voor (bijna) elke les is er startcode voorzien vanwaar we vertrekken om het praktische lesvoorbeeld uit te werken.
Tips
We raden iedereen aan om tijdens de lessen je docent te volgend en niet mee te coderen, met één typo loop je snel achterop en kan je de rest van de les niet volgen.
Je bent beter met de theorie te volgen en vervolgens het uitgewerkte lesvoorbeeld te downloaden, of het zelf opnieuw te maken aan de hand van de theorie en de startcode.
Hieronder volgt een voorlopige les planning, de docenten behouden het recht om de planning te wijzigen als dit nodig geacht wordt.
Dagopleiding
Er gedurende 6 weken 3 lessen per week voorzien. De eerste 5 weken wordt er nieuwe theorie gegeven, de laatste week wordt volledig besteed aan het bouwen van een eindproject.
De derde les van de week is een online les waarin je verder kan werken aan de oefeningen, of je kan beginnen werken aan je project. Tijdens deze online lessen zijn de docenten beschikbaar voor vragen via een Teams vergadering die je in de Canvascursus terugvindt.
| Week | Les 1 | Les 2 | Les 3 (Online) |
|---|---|---|---|
| 1 | Routing, Actions & Components | Oefeningen | - Oefeningen afwerken - Project opgave uitwerken |
| 2 | Prisma | Oefeningen | - Oefeningen afwerken - Project opgave uitwerken |
| 3 | Route handlers | Users & sessions | - Oefeningen afwerken - Project opgave uitwerken |
| 4 | JWT Tokens | Oefeningen | - Oefeningen afwerken - Project opgave uitwerken |
| 5 | Forms & validatie | Oefeningen | - Oefeningen afwerken - Project opgave uitwerken |
| 6 | Project | Project | Project |
Avondopleiding
Merk op, dat de volgorde van hoofdstuk 3 (Route handlers) en hoofdstuk 4 (Users & sessions) omgewisseld is in vergelijking met de dagopleiding. De reden hiervoor is de moeilijkheidgraad van de hoofdstukken en de plaatsing van de online lessen.
| Les | Inhoud | Online |
|---|---|---|
| 1 | Routing, Actions & Components | |
| 2 | Oefeningen: App router, Server action | ✔ |
| 3 | Prisma | |
| 4 | Users & sessions | |
| 5 | Route handlers | ✔ |
| 6 | JWT Tokens | |
| 7 | Forms & validatie | |
| 8 | Project | ✔ |
| 9 | Project | |
| 10 | Project | |
| 11 | Project | ✔ |
| 12 | Project | |
| 13 | Project | |
| 14 | Project |
Evaluatie
De evaluatie voor dit opleidingsonderdeel bestaat uit een individueel project. Je krijgt enkele lessen de tijd om dit project onder begeleiding van je docent te bouwen. Zou je herexamen moeten afleggen, dan kan je dit project verder uitbouwen of vanaf nul beginnen met een ander project. De keuze is aan jou. Voor meer informatie kan je de projectopgave raadplegen.