training
Node.js
Serverside JavaScript done right
Beschrijving
Node.js brengt JavaScript naar de server en verrijkt haar met veelzijdige APIs.
In deze training leer je Node.js van binnen en van buiten kennen. We gaan aan de slag met alles wat Node te bieden heeft, maar ook wat er in het ecosysteem aanwezig is. Denk hierbij aan bestandssysteemoperaties en het opzetten van een low-level (web)server, maar ook aan het gebruik van webframeworks en het benaderen van databases middels een abstractielaag.
Gaandeweg worden interessante geschiedenismomenten, ervaringen en best practices gedeeld.
Benodigde voorkennis
JavaScript-kennis
Onderwerpen
Node.js basis
In deze module leer je de basis van het werken met Node.js.
Lessen
- Node.js-scripts
- CommonJS en ES Modules
- Debuggen van Node-scripts
Lab: Run je eerste script en ontdek debugmogelijkheden
Na het afronden van deze module kunnen deelnemers:
- Run Node.js-scripts
- Importeer modules met CommonJS en ES Modules
- Debug Node-scripts met meerdere debugtools
Bestandssysteem
In deze module leer je om te gaan met het bestandssysteem via Node.js.
Lessen
- Lezen/schrijven van bestanden
- Lezen/schrijven van directories
- Werkwijze met en zonder promises
- Werken met streams
- Bestandssysteem-events
Lab: gebruik de bestandssysteem API om te reageren op veranderingen in een directory en bestanden te lezen/schrijven
Na het afronden van deze module kunnen deelnemers:
- Kleine en grote bestanden uitlezen/wegschrijven
- Reageren op bestandssysteem-events
Modules
In deze module leer je alles over het maken en gebruiken van npm packages.
Lessen
npm
ennpx
CLI commandspackage.json
enpackage-lock.json
- Installeren en gebruiken van npm packages
- Een eigen package maken met CommonJS of ES Modules
- Populaire packages
Lab: Creëer een npm package
Na het afronden van deze module kunnen deelnemers:
- De
npm
ennpx
CLI-commands gebruiken - Node.js-projecten configureren
- npm packages installeren en gebruiken
Event loop
In deze module leer je hoe JavaScript omgaat met asynchroniteit.
Lessen
- Event loop vs het gebruiken van threads
- Voorbeelden met Node.js / browser / libraries
Na het afronden van deze module kunnen deelnemers:
- Async-situaties herkennen
- Problems met asynchroniteit debuggen en verhelpen
Testing
In deze module leer je hoe je Node.js-scripts kunt testen.
Lessen
- Unittesten met Mocha, Chai en Sinon
- Mutation testing met Stryker
Lab: unittest een klein project, inclusief code coverage en mutation testing
Na het afronden van deze module kunnen deelnemers:
- Unittesten met Mocha, Chai en Sinon
- Code coverage produceren aan de hand van Istanbul
- Stryker gebruiken om mutation testing uit te voeren
TCP en HTTP
In deze module leer hoe je TCP- en HTTP-requests kunt versturen en ontvangen.
Lessen
- Reageren op binnenkomende TCP-/HTTP-requests
- Versturen van TCP-/HTTP-requests
Lab: Opzetten van een server
Na het afronden van deze module kunnen deelnemers:
- TCP-/HTTP-requests versturen
- Reageren op TCP-/HTTP-requests
- Inzien wat er bij komt kijken om een server op te zetten
Webframeworks
In deze module leer je hoe je een backend kan realiseren met JavaScript.
Lessen
- JavaScript in the backend
- Node.js en Deno
- Verschillende Node.js webframeworks, zoals Express, Nest en Socket.io
- Waarop te letten bij de keuze voor een webframework
Lab: Opzetten van een webserver met een webframework
Na het afronden van deze module kunnen deelnemers:
- Beredeneren waarom een JavaScriptgebaseerde backend een solide keuze kan zijn
- Kiezen tussen Node.js en Deno
- Bepalen welk framework hen in een bepaalde situatie het beste zal helpen
Data access
In deze module leer je over de verschillende aanpakken voor data access.
Lessen
- NoSQL- en SQL-databases
- Verbinden met een database aan de hand van native connectors
- Verbinden met een database aan de hand van een query builder
- Verbinden met een database aan de hand van een ODM/ORM
Lab: Gebruik een database om entiteiten in op te slaan en van op te halen
Na het afronden van deze module kunnen deelnemers:
- Verbinden met NoSQL- en SQL-databases
- Bepalen welk niveau van abstractie het handigst is voor hun project
Planning
Incompany of persoonlijk advies nodig?
Onze opleidingsadviseurs denken graag met je mee om een persoonlijk advies te geven of een incompany training binnen jouw organisatie te vinden.
Voorkennis trainingen
"Ontzettend goede leraar."Sander
-
Hoge waardering
-
Praktijkgerichte trainingen
-
Gecertificeerde trainers
-
Eigen docenten