See this README with a table of contents here.
Hoewel je als Frontend developer je vooral met client-side bezig houdt, zijn er natuurlijk ook taken die je beter op de server kunt uitvoeren: data opslaan, gebruikers accounts, data uitwisselen met externe diensten, etc. In het server-side scripting leer je hoe je in JavaScript met Node.js een applicatie kunt maken voor het server side werk. Aangezien je vaak moet werken met databases om data op te kunnen slaan is het verstandig om naast dit vak ook te kiezen voor het profileringsvak Storage.
- Werken met een Node.js server
- Templating
- Communicatie met externe dienste (API’s)
- Afhandelen & validatie van formulieren
- Veilig verwerken van gebruikersdata
- Unittesten
- Werken met bestanden en databases
- Realtime communicatie met client-side scripts
[TODO] *
- De student heeft een degelijke basis in Node.js en kan zelfstandig hierop gebaseerde systemen analyseren en naar behoefte aanpassen.
- De student kent de basisprincipes van een imperatieve programmeertaal: variabelen, sequentiële uitvoering, controlestructuren.
- De student ziet het nut van het gebruik van functies en kan functies toepassen om een web- applicatie gestructureerd op te bouwen.
- De student is in staat om met behulp van Node.js verbinding te leggen met een MySQL database en daar gegevens uit op te halen en in te muteren.
- De student kan de geleerde basisprincipes zelfstandig combineren en toepassen om eenvoudige programmeerproblemen op te lossen.
- Basis javascript kennis,
- Terminal kennis (zie Tools voor extra resource)
- Git en een GitHub-account
Het programma bestaat uit een serie hoor- en werkcolleges. In de hoorcolleges behandelen we elke week alles rondom een bepaald onderwerp, in de werkcolleges werk je elke week aan een opdracht om je dat onderwerp verder eigen te maken. Er zijn in totaal drie deeltoetsen waarvan de eerste twee tijdens het practicum uitgevoerd moeten worden. De eindopdracht wordt thuis gemaakt en moet bij de docent worden ingeleverd.
- Maandag (8.30u)
- Nieuw lesmateriaal wordt uitgelegd
- Uitleg huiswerkopdrachten
- Presentatie na afloop online
- Behandelen opdrachten van vorige week
- Werken aan de nieuwe opdracht
- Vragen stellen
Het huiswerk wordt per week vastgelegd in het weekoverzicht.
2 uur lezen, 2 uur opdracht voorbereiden
Voor iedere opdracht wordt een bootstraped project aangeleverd.
- Fork
- Clone
- Open project in IDE, modify, test, clone etc.
- Commit your changes
- To save -> Push
Het maken van de opdrachten zorgt ervoor dat je een goede voorbereiden hebt voor de deeltoetsen en eindopdracht.
Github zal gebruikt worden om efficiënt code te kunnen delen, zodat wij snel jouw code kunnen zien en kunnen testen.
Pull-request
Gedurende het programma worden in de werkcolleges 2 deeltoetsen aangeboden met een opbouwende moeilijkheidsgraad. In deze toetsen lost de student programmeerproblemen op met behulp van Node.js & Javascript. Beoordeling van en feedback op de gemaakte deeltoetsen worden tijdens de eerstvolgende practica gegeven, het is dus zaak dat studenten bij alle practica aanwezig zijn. Als alle toetsen voldoende zijn afgerond bestaat het eindcijfer uit het cijfer voor de eindopdracht. De eerste twee deeltoetsen worden alleen beoordeeld met voldoende/onvoldoende. Er is een algemene herkansing voor studenten die niet alle deeltoetsen voldoende hebben afgerond. Deze herkansing bestaat uit een praktijkgerichte opdracht die de totale stof uit alle deeltoetsen beslaat.
- Node installeren en REPL draaien
- NPM packages installeren en gebruik package.json
- Debugging met console.log/console.dir en debugger
- Basis JS control flow
- Modules
- Async, callbacks en events
- Node. js in Action, Cantelon, Mike, et al. - Manning Publications, 2014
- Chapter 3, t/m 3.2.3 (p 27 t/m 58)
- Appendix A5 (p 363 t/m 366)
- Appendix B1 t/m B3.2 (p 367 t/m 371)
- Opdracht 1
- Appserver
- Templating
- REST (externe diensten)
- Forms
- Sessions
- Validaties
- Security XSS
- Unittesten
- Databases
- MySQL
- Security (injection)
- Files
- Realtime
In deze weken zal geen nieuwe stof behandeld worden. Tijdens het werkcollege in week 7 zal er een samenvatting van de voor de eindopdracht belangrijke stof plaats vinden.
Het boek: Node. js in Action, Cantelon, Mike, et al. - Manning Publications, 2014 zal als belangrijke leidraad van deze cursus worden gebruikt. Wekelijks zullen diverse hoofdstukken hieruit worden behandeld.