# Programma 2025/2026

***[Startjaar 2025](https://www.roc.ovh/books/software-development-2025/page/programma-c25) - [Startjaar 2026](https://www.roc.ovh/books/software-development-2025/page/programma-20262027)***

***jaar 1***

<table border="1" id="bkmrk-periode-1-periode-2-" style="border-collapse: collapse; width: 100%; padding: 2px; height: 451.3125px;"><colgroup><col style="width: 12.5%;"></col><col style="width: 12.5%;"></col><col style="width: 12.5%;"></col><col style="width: 12.5%;"></col><col style="width: 12.5%;"></col><col style="width: 12.5%;"></col><col style="width: 12.5%;"></col><col style="width: 12.5%;"></col></colgroup><tbody><tr style="height: 29.53125px;"><td class="align-center" colspan="2" style="background-color: rgb(194, 224, 244); height: 29.53125px;">Periode 1  
</td><td class="align-center" colspan="2" style="background-color: rgb(194, 224, 244); height: 29.53125px;">Periode 2</td><td class="align-center" colspan="2" style="background-color: rgb(194, 224, 244); height: 29.53125px;">Periode 3</td><td class="align-center" colspan="2" style="background-color: rgb(194, 224, 244); height: 29.53125px;">Periode 4</td></tr><tr style="height: 29.53125px;"><td class="align-center" style="height: 29.53125px; background-color: rgb(53, 152, 219);"><span style="color: rgb(255, 255, 255);">Blok 1</span></td><td class="align-center" style="height: 29.53125px; background-color: rgb(53, 152, 219);"><span style="color: rgb(255, 255, 255);">Blok 2</span></td><td class="align-center" style="height: 29.53125px; background-color: rgb(53, 152, 219);"><span style="color: rgb(255, 255, 255);">Blok 3</span></td><td class="align-center" style="height: 29.53125px; background-color: rgb(53, 152, 219);"><span style="color: rgb(255, 255, 255);">Blok 4</span></td><td class="align-center" style="height: 29.53125px; background-color: rgb(53, 152, 219);"><span style="color: rgb(255, 255, 255);">Blok 5</span></td><td class="align-center" style="height: 29.53125px; background-color: rgb(53, 152, 219);"><span style="color: rgb(255, 255, 255);">Blok 6</span></td><td class="align-center" style="height: 29.53125px; background-color: rgb(53, 152, 219);"><span style="color: rgb(255, 255, 255);">Blok 7</span></td><td class="align-center" style="height: 29.53125px; background-color: rgb(53, 152, 219);"><span style="color: rgb(255, 255, 255);">Blok 8</span></td></tr><tr style="height: 77.5px;"><td class="align-center" style="height: 77.5px; padding: 2px;">Scratch  
-&gt;  
Python</td><td class="align-center" style="height: 77.5px;">Retro Gaming

Python

</td><td class="align-center" style="height: 77.5px;">Front End  
CSS</td><td class="align-center" style="height: 77.5px;">Back End  
PHP</td><td class="align-center" style="height: 77.5px;">JavaScript</td><td class="align-center" style="height: 77.5px;">Databases</td><td class="align-center" style="height: 77.5px;">Deployment

en FrameWorks

</td><td class="align-center" style="height: 77.5px;">Security

en  
OOP

</td></tr><tr style="height: 80px;"><td class="align-center" style="height: 80px; background-color: rgb(191, 237, 210); border: 2px solid rgb(22, 145, 121);">[Scratch 1](https://www.roc.ovh/books/software-development-2025/page/scratch-1)</td><td class="align-center" style="height: 80px; background-color: rgb(191, 237, 210); border: 2px solid rgb(22, 145, 121);">[Vallende Stenen](https://www.roc.ovh/books/software-development-2025/page/vallende-stenen)</td><td class="align-center" style="height: 80px; background-color: rgb(191, 237, 210); border: 2px solid rgb(22, 145, 121);">[HTML Phoenix](https://www.roc.ovh/books/software-development-2025/page/html-phoenix)</td><td class="align-center" style="height: 80px; background-color: rgb(191, 237, 210); border: 2px solid rgb(22, 145, 121);">[Intro Web XAMPP](https://www.roc.ovh/books/software-development-2025/page/php-intro)</td><td class="align-center" style="height: 80px; background-color: rgb(191, 237, 210); border: 2px solid rgb(22, 145, 121);">[Prompt Engineering 2](https://www.roc.ovh/books/software-development-2025/page/prompt-engineering-2)</td><td class="align-center" style="height: 80px; background-color: rgb(191, 237, 210); border: 2px solid rgb(22, 145, 121);">[DB Design](https://www.roc.ovh/books/software-development-2025/page/database-1)</td><td class="align-center" style="height: 80px; background-color: rgb(191, 237, 210); border: 2px solid rgb(22, 145, 121);">[Prompt Engineering 3](https://www.roc.ovh/books/software-development-2025/page/prompt-engineering-3)</td><td class="align-center" style="height: 80px; background-color: rgb(191, 237, 210); border: 2px solid rgb(22, 145, 121);">[Cyber Security 1](https://www.roc.ovh/books/software-development-2025/page/cyber-security-1)</td></tr><tr style="height: 58.6875px;"><td class="align-center" style="height: 58.6875px; background-color: rgb(191, 237, 210); border: 2px solid rgb(22, 145, 121);">[Scratch 2](https://www.roc.ovh/books/software-development-2025/page/scratch-2)  
  
</td><td class="align-center" style="height: 58.6875px; background-color: rgb(191, 237, 210); border: 2px solid rgb(22, 145, 121);">[Snake](https://www.roc.ovh/books/software-development-2025/page/snake)</td><td class="align-center" style="height: 58.6875px; background-color: rgb(191, 237, 210); border: 2px solid rgb(22, 145, 121);">[CSS Phoenix](https://www.roc.ovh/books/software-development-2025/page/css-phoenix)</td><td class="align-center" style="height: 58.6875px; background-color: rgb(191, 237, 210); border: 2px solid rgb(22, 145, 121);">[Prompt Engineering 1](https://www.roc.ovh/books/software-development-2025/page/prompt-engineering-1)</td><td class="align-center" style="height: 58.6875px; background-color: rgb(191, 237, 210); border: 2px solid rgb(22, 145, 121);">[JS 2 (DOM)](https://www.roc.ovh/books/software-development-2025/page/js-dom1-8os)</td><td class="align-center" style="height: 58.6875px; background-color: rgb(191, 237, 210); border: 2px solid rgb(22, 145, 121);">[SQL](https://www.roc.ovh/books/software-development-2025/page/sql)</td><td class="align-center" style="height: 58.6875px; background-color: rgb(191, 237, 210); border: 2px solid rgb(22, 145, 121);">[Deployment](https://www.roc.ovh/books/software-development-2025/page/deployement)</td><td class="align-center" style="height: 58.6875px; background-color: rgb(191, 237, 210); border: 2px solid rgb(22, 145, 121);">[Cyber Security 2](https://www.roc.ovh/books/software-development-2025/page/cyber-security-2)</td></tr><tr style="height: 58.6875px;"><td class="align-center" style="height: 58.6875px; background-color: rgb(191, 237, 210); border: 2px solid rgb(22, 145, 121);">[naar Python](https://www.roc.ovh/books/software-development-2025/page/van-scratch-naar-python)  
</td><td class="align-center" style="height: 58.6875px; background-color: rgb(191, 237, 210); border: 2px solid rgb(22, 145, 121);">[Intro AI](https://www.roc.ovh/books/software-development-2025/page/introductie-ai)</td><td class="align-center" style="height: 58.6875px; background-color: rgb(191, 237, 210); border: 2px solid rgb(22, 145, 121);">[Intro JS Phoenix](https://www.roc.ovh/books/software-development-2025/page/intro-js)</td><td class="align-center" style="height: 58.6875px; background-color: rgb(191, 237, 210); border: 2px solid rgb(22, 145, 121);">[PHP 2](https://www.roc.ovh/books/software-development-2025/page/php-1-10p)</td><td class="align-center" style="height: 58.6875px; background-color: rgb(191, 237, 210); border: 2px solid rgb(22, 145, 121);">[JS 3 (Dom)](https://www.roc.ovh/books/software-development-2025/page/js-dom2)</td><td class="align-center" style="height: 58.6875px; background-color: rgb(191, 237, 210); border: 2px solid rgb(22, 145, 121);">[PDO](https://www.roc.ovh/books/software-development-2025/page/pdo)</td><td class="align-center" style="height: 58.6875px; background-color: rgb(191, 237, 210); border: 2px solid rgb(22, 145, 121);">[CMS](https://www.roc.ovh/books/software-development-2025/page/cms-v2)</td><td class="align-center" style="height: 58.6875px; background-color: rgb(191, 237, 210); border: 2px solid rgb(22, 145, 121);">[OOP](https://www.roc.ovh/books/software-development-2025/page/oop)</td></tr><tr style="height: 58.6875px;"><td class="align-center" style="height: 58.6875px; background-color: rgb(191, 237, 210); border: 2px solid rgb(22, 145, 121);">[Pak de Kaas](https://www.roc.ovh/books/software-development-2025/page/pak-de-kaas)  
</td><td class="align-center" style="height: 58.6875px; background-color: rgb(191, 237, 210); border: 2px solid rgb(22, 145, 121);">[Snake Challenge](https://www.roc.ovh/books/software-development-2025/page/snake-challenge)</td><td class="align-center" style="height: 58.6875px; background-color: rgb(191, 237, 210); border: 2px solid rgb(22, 145, 121);">[Portfolio Challenge](https://www.roc.ovh/books/software-development-2025/page/portfolio-challenge)</td><td class="align-center" style="height: 58.6875px; background-color: rgb(191, 237, 210); border: 2px solid rgb(22, 145, 121);">[PHP Challenge](https://www.roc.ovh/books/software-development-2025/page/php-challenge)</td><td class="align-center" style="height: 58.6875px; background-color: rgb(191, 237, 210); border: 2px solid rgb(22, 145, 121);">[JS Challenge](https://www.roc.ovh/books/software-development-2025/page/java-script-challenge)</td><td class="align-center" style="height: 58.6875px; background-color: rgb(191, 237, 210); border: 2px solid rgb(22, 145, 121);">[Crud Challenge](https://www.roc.ovh/books/software-development-2025/page/crud-challenge)</td><td class="align-center" style="height: 58.6875px; background-color: rgb(191, 237, 210); border: 2px solid rgb(22, 145, 121);">[Yii Intro](https://www.roc.ovh/books/software-development-2025/page/yii-introduction)</td><td class="align-center" style="height: 58.6875px; background-color: rgb(191, 237, 210); border: 2px solid rgb(22, 145, 121);">[OOP Challenge](https://www.roc.ovh/books/software-development-2025/page/oop-challenge)</td></tr><tr style="height: 58.6875px;"><td class="align-center" style="background-color: rgb(206, 212, 217); border: 2px solid rgb(22, 145, 121); height: 58.6875px;">[Kennis-Check Blok 1](https://www.roc.ovh/books/software-development-2025/page/kennis-check-blok-1)</td><td class="align-center" style="background-color: rgb(206, 212, 217); border: 2px solid rgb(22, 145, 121); height: 58.6875px;">[Kennis-Check Blok 2](https://www.roc.ovh/books/software-development-2025/page/kennis-check-blok-2)</td><td class="align-center" style="background-color: rgb(206, 212, 217); border: 2px solid rgb(22, 145, 121); height: 58.6875px;">[Kennis-Check Blok 3](https://www.roc.ovh/books/software-development-2025/page/kennis-check-blok-3)</td><td class="align-center" style="background-color: rgb(206, 212, 217); border: 2px solid rgb(22, 145, 121); height: 58.6875px;">[Kennis-Check Blok 4](https://www.roc.ovh/books/software-development-2025/page/kennis-check-blok-4)</td><td class="align-center" style="background-color: rgb(206, 212, 217); border: 2px solid rgb(22, 145, 121); height: 58.6875px;">[Kennis-Check Blok 5](https://www.roc.ovh/books/software-development-2025/page/kennis-check-blok-5)</td><td class="align-center" style="background-color: rgb(206, 212, 217); border: 2px solid rgb(22, 145, 121); height: 58.6875px;">[Kennis-Check Blok 6](https://www.roc.ovh/books/software-development-2025/page/kennis-check-blok-6)</td><td class="align-center" style="background-color: rgb(206, 212, 217); border: 2px solid rgb(22, 145, 121); height: 58.6875px;">[Kennis-Check Blok 7](https://www.roc.ovh/books/software-development-2025/page/kennis-check-blok-7)</td><td class="align-center" style="background-color: rgb(206, 212, 217); border: 2px solid rgb(22, 145, 121); height: 58.6875px;">[Kennis-Check Blok 8](https://www.roc.ovh/books/software-development-2025/page/kennis-check-blok-8)</td></tr></tbody></table>

## Blok 1 - van blok naar tekst

*(totaal ongeveer 9-10 uur)*

#### [▶️](https://www.roc.ovh/books/software-development-2025/page/scratch-1) ***Scratch 1 -(block-based programmeren)*** 

##### 🎯 Wat ga je leren?

In <span class="s2">**Scratch 1**</span> bouw je stap voor stap je eerste game – een doolhofspel:

- Je ontdekt de <span class="s1">**interface**</span>: waar je blokken, sprites en kleuren checkt<span class="Apple-converted-space"> </span>.
- Je leert een sprite te laten <span class="s1">**bewegen**</span> met pijltjestoetsen of de groene vlag<span class="Apple-converted-space"> </span>.
- Daarna voeg je <span class="s1">**loops**</span> toe: code die automatisch herhaalt (handig voor lopen, dansen, geluidjes)<span class="Apple-converted-space"> </span>.
- Met <span class="s1">**if-dan**</span> logica voeg je slimme interactie toe: bijvoorbeeld, als je een muur raakt, gebeurt er iets<span class="Apple-converted-space"> </span>.
- Tot slot leer je variabelen voor je <span class="s1">**score**</span>, zodat je merkt dat je echt iets zelf aanstuurt – superpower!<span class="Apple-converted-space"> </span>

<details id="bkmrk-waarom-dit-vet-is-je"><summary>Waarom dit vet is</summary>

- <span class="s1">**Je maakt écht iets**</span>: geen saaie theorie, maar een game die je zelf bouwt.
- <span class="s1">**Visueel programmeren**</span> maakt het laagdrempelig – je ziet meteen wat er gebeurt.
- <span class="s1">**Logisch denkwerk**</span> wordt je nieuwe skill: je splits een probleem in stukjes, bedenkt hoe je dat moet oplossen, en bouwt het.
- <span class="s1">**Creatief bezig**</span>: je kiest sprites, kleuren, bewegingen en geluidjes – alles om jouw game uniek te maken.

</details><details id="bkmrk-het-is-in-totaal-zo%E2%80%99"><summary>Het is in totaal zo’n ±145 minuten aan opdrachten, met video’s, uitleg en toffe challenges</summary>

<table id="bkmrk-onderdeel-geschatte-" style="width: 54.761905%;"><thead><tr><th style="width: 57.95207%;">Onderdeel</th><th style="width: 42.04793%;">Geschatte tijd (in minuten)</th></tr></thead><tbody><tr><td style="width: 57.95207%;">Uitleg en oriëntatie op interface</td><td style="width: 42.04793%;">20</td></tr><tr><td style="width: 57.95207%;">Opdracht 1: Sprite laten bewegen</td><td style="width: 42.04793%;">15</td></tr><tr><td style="width: 57.95207%;">Opdracht 2: Dansende sprite</td><td style="width: 42.04793%;">20</td></tr><tr><td style="width: 57.95207%;">Opdracht 3: Geluid toevoegen</td><td style="width: 42.04793%;">15</td></tr><tr><td style="width: 57.95207%;">Opdracht 4: Herhalen gebruiken</td><td style="width: 42.04793%;">20</td></tr><tr><td style="width: 57.95207%;">Opdracht 5: Start met groene vlag</td><td style="width: 42.04793%;">10</td></tr><tr><td style="width: 57.95207%;">Opdracht 6: Eigen sprite gebruiken</td><td style="width: 42.04793%;">20</td></tr><tr><td style="width: 57.95207%;">Opdracht 7: Sprite reageert op toetsen</td><td style="width: 42.04793%;">25</td></tr><tr><td style="width: 57.95207%;">**Totaal geschat**</td><td style="width: 42.04793%;">**145 minuten**</td></tr></tbody></table>

</details>#### [▶️](https://www.roc.ovh/books/software-development-2025/page/scratch-2) ***Scratch 2 (block-based programmeren)***

##### 🎮 Bouw je eigen platformspel – net als Mario!

In deze module leer je stap voor stap hoe je je <span class="s2">**eigen platformspel maakt in Scratch**</span> – een beetje zoals Super Mario, maar dan met jouw eigen ideeën en stijl! 🧱👾

Je begint eenvoudig: een sprite die kan <span class="s2">**lopen en springen**</span>. Maar al snel voeg je <span class="s2">**muren, platforms en obstakels**</span> toe. Daarna wordt het steeds leuker (en spannender): je leert hoe je <span class="s2">**tegen monsters vecht**</span>, hoe je <span class="s2">**kunt springen tegen muren**</span>, en hoe je <span class="s2">**levels uitdagender maakt**</span>.

<details id="bkmrk-wat-je-gaat-doen-spr"><summary>Wat je gaat doen</summary>

- Sprite laten <span class="s1">**bewegen**</span> en <span class="s1">**springen**</span>
- Platforms bouwen waar je op kunt staan
- Obstakels toevoegen die je moet <span class="s1">**vermijden**</span>
- <span class="s1">**Monsters**</span> laten verschijnen (en verslaan!)
- Effecten maken zoals schade of score
- Bij elke stap krijg je duidelijke uitleg met een <span class="s1">**video**</span>
- Je maakt screenshots van je werk om in te leveren en punten te verdienen

</details><details id="bkmrk-waarom-dit-tof-is-je"><summary>Waarom dit tof is</summary>

- <span class="s1">Je leert </span>**hoe games echt werken**
- <span class="s1">Je oefent met </span>**logisch denken en programmeren**
- Je gebruikt je <span class="s1">**creativiteit**</span> om het spel helemaal van jou te maken
- Je ziet <span class="s1">**direct resultaat**</span> van wat je bouwt – dat motiveert enorm!

</details><details id="bkmrk-deze-module-kost-in-"><summary>Deze module kost in totaal ongeveer 160 minuten</summary>

<table id="bkmrk-onderdeel-geschatte--1"><thead><tr><th>Onderdeel</th><th>Geschatte tijd (in minuten)</th></tr></thead><tbody><tr><td>Uitleg random / willekeurige beweging</td><td>15</td></tr><tr><td>Opdracht: sprite beweegt random</td><td>20</td></tr><tr><td>Botsing detecteren tussen sprites</td><td>20</td></tr><tr><td>Opdracht: reactie op botsing</td><td>20</td></tr><tr><td>Variabele uitleg + maken van score</td><td>20</td></tr><tr><td>Score zichtbaar maken op scherm</td><td>10</td></tr><tr><td>Eindopdracht: game maken met score en botsing</td><td>40</td></tr><tr><td>Testen / verbeteren van eigen game</td><td>15</td></tr><tr><td>**Totaal geschat**</td><td>**160 minuten**</td></tr></tbody></table>

</details>#### [▶️](https://www.roc.ovh/books/software-development-2025/page/van-scratch-naar-python) ***Van Scratch naar Python***

In deze module stap je over van Scratch naar échte code in Python. Geen blokjes meer, maar zelf typen! Je leert de basis zoals <span class="s1">**inspringen**</span>, <span class="s1">**if-statements**</span>, en <span class="s1">**loops**</span>, en ontdekt hoe je een stip laat bewegen, stuiteren of zelfs een spiraal laat tekenen.

Alles gebeurt stap voor stap, met herkenbare voorbeelden uit Scratch. Je werkt in een makkelijke programmeeromgeving (Thonny), zodat je je kunt focussen op het leren.

Aan het eind kijk je terug: wat heb je geleerd, wat ging goed en wat kun je nog verbeteren?

<span class="s1">**Kortom**</span>: een supertoffe en toegankelijke eerste stap naar écht programmeren! 🧠💻

<details id="bkmrk-deze-module-kost-ong"><summary>Deze module kost ongeveer 140 minuten</summary>

<table id="bkmrk-onderdeel-geschatte--3"><thead><tr><th>Onderdeel</th><th>Geschatte tijd (in minuten)</th></tr></thead><tbody><tr><td>Uitleg overgang Scratch → Python</td><td>15</td></tr><tr><td>Eerste turtle-voorbeeld tekenen</td><td>15</td></tr><tr><td>Uitleg over regels code en syntax</td><td>20</td></tr><tr><td>Opdracht: vierkant tekenen</td><td>15</td></tr><tr><td>Uitleg en gebruik van `for`-loop</td><td>20</td></tr><tr><td>Opdracht: herhaling met `for`-loop</td><td>20</td></tr><tr><td>Opdracht: maak een patroon met meerdere loops</td><td>25</td></tr><tr><td>Reflectie of bespreking</td><td>10</td></tr><tr><td>**Totaal geschat**</td><td>**140 minuten**</td></tr></tbody></table>

</details>#### [▶️](https://www.roc.ovh/books/software-development-2025/page/pak-de-kaas) ***Pak de Kaas (eenvoudig spel in Python)***

In deze module leer je stap voor stap hoe je in Python een eigen game maakt. Je begint met het tonen van afbeeldingen (sprites) en leert daarna hoe je een speler laat bewegen en botsingen detecteert. Daarna voeg je extra’s toe zoals <span class="s1">**willekeurige bewegingen**</span>, een <span class="s1">**score**</span> en zelfs een <span class="s1">**tijdslimiet**</span>.

Je oefent met belangrijke programmeerconcepten zoals <span class="s1">**if-statements**</span>, <span class="s1">**loops**</span> en <span class="s1">**variabelen**</span>. Ook leer je hoe je grote problemen opsplitst in kleine stukjes code – precies zoals echte programmeurs dat doen.

Je leert dus niet alleen games maken, maar ook <span class="s1">**slim nadenken in stappen**</span>. Zo word je steeds handiger in het schrijven én begrijpen van code. 🚀💡

<details id="bkmrk-deze-module-kost-ong-1"><summary>Deze module kost ongeveer 120 minuten</summary>

<table id="bkmrk-onderdeel-geschatte--2"><thead><tr><th>Onderdeel</th><th>Geschatte tijd (in minuten)</th></tr></thead><tbody><tr><td>Uitleg overgang Scratch → Python</td><td>15</td></tr><tr><td>Eerste turtle-voorbeeld tekenen</td><td>15</td></tr><tr><td>Uitleg over regels code en syntax</td><td>20</td></tr><tr><td>Opdracht: vierkant tekenen</td><td>15</td></tr><tr><td>Uitleg en gebruik van `for`-loop</td><td>20</td></tr><tr><td>Opdracht: herhaling met `for`-loop</td><td>20</td></tr><tr><td>Opdracht: maak een patroon met meerdere loops</td><td>25</td></tr><tr><td>Reflectie of bespreking</td><td>10</td></tr><tr><td>**Totaal geschat**</td><td>**140 minuten**</td></tr></tbody></table>

</details>## <span class="ng-star-inserted" data-start-index="444"><span class="ng-star-inserted" data-start-index="548">Blok 2 - spelletjes in Python</span></span>

*<span class="ng-star-inserted" data-start-index="444"><span class="ng-star-inserted" data-start-index="548">(totaal ongeveer 8 - 9 uur)</span></span>*

#### [▶️](https://www.roc.ovh/books/software-development-2025/page/vallende-stenen) ***<span class="ng-star-inserted" data-start-index="444"><span class="ng-star-inserted" data-start-index="548">Vallende Stenen (spel Python)</span></span>***

**🧠 Tover je kennis om in een eigen game**

In deze module ga je verder met wat je al hebt geleerd in Scratch en “Van Scratch naar Python”. Je gebruikt <span class="s2">**variabelen**</span>, <span class="s2">**if-statements**</span> en <span class="s2">**for-loops**</span> om een spel te maken waarin objecten vallen en botsingen plaatsvinden.

Je oefent met het <span class="s2">**lezen en aanpassen van code**</span>, zodat je snapt hoe iets werkt én hoe je het kunt verbeteren. Denk aan: voorkomen dat je speler uit beeld vliegt, of meerdere objecten tegelijk laten bewegen.

Aan het eind laat je jouw <span class="s2">**creativiteit los**</span>: voeg zelf nieuwe functies toe zoals geluiden, power-ups of een andere look. Zo maak je het spel écht van jou! 🎨🎮

<details id="bkmrk-deze-module-kost-ong-2"><summary>Deze module kost ongeveer 120 minuten</summary>

<table id="bkmrk-onderdeel-tijd-%28in-m-1"><thead><tr><th>Onderdeel</th><th>Tijd (in minuten)</th></tr></thead><tbody><tr><td>Spelconcept begrijpen</td><td>10</td></tr><tr><td>Speler-sprite tekenen + toetsen besturen</td><td>20</td></tr><tr><td>Steen laten vallen vanaf random plek</td><td>25</td></tr><tr><td>Herhalen van de val (loop gebruiken)</td><td>15</td></tr><tr><td>Botsing detecteren</td><td>20</td></tr><tr><td>Spel laten stoppen of levens aanpassen</td><td>15</td></tr><tr><td>Testen en bijschaven</td><td>15</td></tr><tr><td>(Optioneel) Extra’s zoals score of geluid</td><td>20</td></tr><tr><td>**Totaal zonder extra’s**</td><td>**120 minuten**</td></tr><tr><td>**Totaal met extra’s**</td><td>**140 minuten**</td></tr></tbody></table>

</details>#### [▶️](https://www.roc.ovh/books/software-development-2025/page/snake) ***<span class="ng-star-inserted" data-start-index="2214"><span class="ng-star-inserted" data-start-index="2384">Snake (spel Python)</span></span>***

**🐍 Bouw je eigen Snake-game in Python**

In deze module ga je aan de slag met het maken van een echte <span class="s2">**Snake-game**</span> met Pygame Zero. Je herhaalt bekende concepten, maar de opdrachten zijn wat pittiger en de code wordt langer.

Je leert nieuwe dingen, zoals <span class="s2">**hoe de slang groeit**</span> als hij iets eet – een tricky stukje logica! Aan het eind krijg je een opdracht waarbij je goed moet <span class="s2">**nadenken over een game-probleem**</span>, een mooie voorbereiding op later werk met AI en prompt engineering.

Kortom: een leuke maar uitdagende module waarin je laat zien wat je al kunt, én nieuwe skills leert! 🧠💻

<details id="bkmrk-deze-module-kost-ong-3"><summary>Deze module kost ongeveer 160 minuten</summary>

<table id="bkmrk-onderdeel-tijd-%28in-m-2"><thead><tr><th>Onderdeel</th><th>Tijd (in minuten)</th></tr></thead><tbody><tr><td>Spelidee en opdracht begrijpen</td><td>10</td></tr><tr><td>Basisbesturing + beweging slang</td><td>25</td></tr><tr><td>Eten plaatsen en detectie bij aanraking</td><td>20</td></tr><tr><td>Snake laten groeien na eten</td><td>25</td></tr><tr><td>Zelfbotsing implementeren</td><td>25</td></tr><tr><td>Score bijhouden</td><td>15</td></tr><tr><td>Game-over logica (botsing muur/zelf)</td><td>15</td></tr><tr><td>Testen, debuggen en verbeteren</td><td>20</td></tr><tr><td>(Optioneel) Extra functies</td><td>20</td></tr><tr><td>**Totaal zonder extra’s**</td><td>**155 minuten**</td></tr><tr><td>**Totaal met extra’s**</td><td>**175 minuten**</td></tr></tbody></table>

</details>#### [▶️](https://www.roc.ovh/books/software-development-2025/page/introductie-ai) ***<span class="ng-star-inserted" data-start-index="2214"><span class="ng-star-inserted" data-start-index="2384"><span class="ng-star-inserted" data-start-index="0">Intro AI (wat is AI en wat zijn voor- en nadelen?)</span></span></span>***

**🤖 Wat is AI – en hoe gebruik je het slim?**

In deze korte module ontdek je het verschil tussen <span class="s2">**klassiek programmeren**</span> (met vaste regels) en <span class="s2">**AI**</span>, die juist <span class="s2">**leert van data**</span>. Je leert welke soorten AI er zijn – zoals <span class="s2">**classificatie**</span> en <span class="s2">**voorspellen**</span> – en je denkt na over de <span class="s2">**voordelen én risico’s**</span>van AI.

Ook maak je kennis met <span class="s2">**prompt engineering**</span>: hoe stel je goede vragen aan AI om het nuttig en eerlijk te gebruiken. Deze les is een opwarmertje voor wat nog komt én een voorbereiding om AI slim in te zetten bij je Snake Challenge. 🧠⚙️

<details id="bkmrk-deze-module-kost-ong-4"><summary>Deze module kost ongeveer 70 minuten</summary>

<table id="bkmrk-onderdeel-tijd-%28in-m-3"><thead><tr><th>Onderdeel</th><th>Tijd (in minuten)</th></tr></thead><tbody><tr><td>Klassikale uitleg en voorbeelden</td><td>20–30</td></tr><tr><td>Video of demonstratie (indien aanwezig)</td><td>10</td></tr><tr><td>Vragen beantwoorden en bespreken</td><td>20–30</td></tr><tr><td>Reflectie of groepsdiscussie</td><td>15</td></tr><tr><td>(Optioneel) korte opdracht of Kahoot</td><td>10–15</td></tr><tr><td>**Totaal**</td><td>**60–90 minuten**</td></tr></tbody></table>

</details>#### [▶️](https://www.roc.ovh/books/software-development-2025/page/snake-challenge) ***<span class="ng-star-inserted" data-start-index="2214"><span class="ng-star-inserted" data-start-index="2384">Snake</span></span> Challenge (Python/AI challenge)***

<span class="ng-star-inserted" data-start-index="2214"><span class="ng-star-inserted" data-start-index="2384"><span class="ng-star-inserted" data-start-index="0">Studenten woerden in deze **challange** uitgedaagd om een **eigen versie** van hun Snake game te maken.</span></span></span>

<details id="bkmrk-deze-module-duurt-on"><summary>Deze module duurt ongeveer 120 minuten</summary>

<table id="bkmrk-activiteit-tijd-%28in-"><thead><tr><th>Activiteit</th><th>Tijd (in minuten)</th></tr></thead><tbody><tr><td>Ideeën bedenken (eventueel klassikaal)</td><td>15</td></tr><tr><td>Eén uitbreiding kiezen en implementeren</td><td>30–45</td></tr><tr><td>Tweede uitbreiding maken</td><td>30–45</td></tr><tr><td>Testen, verbeteren en eventueel presenteren</td><td>20–30</td></tr><tr><td>**Totaal geschat**</td><td>**100–135 minuten**</td></tr></tbody></table>

</details>## <span class="ng-star-inserted" data-start-index="2214"><span class="ng-star-inserted" data-start-index="2384"><span class="ng-star-inserted" data-start-index="0">Blok 3 (web front-end)</span></span></span>

*<span class="ng-star-inserted" data-start-index="2214"><span class="ng-star-inserted" data-start-index="2384"><span class="ng-star-inserted" data-start-index="0">(totaal ongeveer 8-9 uur)</span></span></span>*

#### [▶️](https://www.roc.ovh/books/software-development-2025/page/html-phoenix) *<span class="ng-star-inserted" data-start-index="2214"><span class="ng-star-inserted" data-start-index="2384"><span class="ng-star-inserted" data-start-index="0">**HTML / Phoenix**  
</span></span></span>*

In deze module leer je stap voor stap hoe HTML werkt. Elke les behandelt een duidelijk onderwerp, zoals de structuur van een webpagina, tekst opmaken, afbeeldingen en links toevoegen, lijsten en tabellen maken, en formulieren bouwen.

Je werkt in Phoenix Code, een makkelijke editor in je browser waar je direct kunt zien wat je maakt.

Door de opdrachten leer je niet alleen losse onderdelen, maar werk je toe naar een eigen mini-project: een persoonlijke homepage die je helemaal zelf bouwt met wat je hebt geleerd.

<details id="bkmrk-deze-module-kost-ong-5"><summary>Deze module kost ongeveer 100 minuten</summary>

<table id="bkmrk-onderdeel-tijd-%28in-m-4"><thead><tr><th>Onderdeel</th><th>Tijd (in minuten)</th></tr></thead><tbody><tr><td>Introductie HTML + structuur uitleg</td><td>15</td></tr><tr><td>Voorbeelden tags + experimenteren</td><td>25</td></tr><tr><td>Werken met Phoenix (inloggen, omgeving leren)</td><td>10</td></tr><tr><td>Opdracht: eigen pagina maken</td><td>30–40</td></tr><tr><td>Testen en bespreken</td><td>10–15</td></tr><tr><td>**Totaal geschat**</td><td>**90–105 minuten**</td></tr></tbody></table>

</details>#### [▶️](https://www.roc.ovh/books/software-development-2025/page/css-phoenix) ***<span class="ng-star-inserted" data-start-index="2214"><span class="ng-star-inserted" data-start-index="2384"><span class="ng-star-inserted" data-start-index="0">CSS / Phoenix</span></span></span>***

In deze module ontdek je wat CSS is en waarom het onmisbaar is om je webpagina er mooi en overzichtelijk uit te laten zien.

Je leert hoe je kleuren, lettertypes, marges, uitlijning en achtergronden aanpast, en hoe je met het box-model werkt (margin, padding, border). Ook selectors zoals element, class en ID komen aan bod, zodat je precies weet hoe je onderdelen van je site kunt stylen. Met Flexbox leer je moderne lay-outs maken die netjes meeschalen en mooi uitgelijnd zijn.

🌟 Het einddoel is dat je zelf goed uitziende, strak opgebouwde webpagina’s kunt maken met jouw eigen stijl.

<details id="bkmrk-deze-module-kost-ong-6"><summary>Deze module kost ongeveer 100 minuten</summary>

<table id="bkmrk-onderdeel-tijd-%28in-m-5"><thead><tr><th>Onderdeel</th><th>Tijd (in minuten)</th></tr></thead><tbody><tr><td>Uitleg wat CSS is en hoe het werkt</td><td>15</td></tr><tr><td>CSS-syntaxis + voorbeelden toepassen</td><td>25</td></tr><tr><td>Werken met selectors</td><td>10</td></tr><tr><td>Opdracht: bestaande HTML-pagina stylen</td><td>30–40</td></tr><tr><td>Experimenteren en verbeteren</td><td>10–15</td></tr><tr><td>**Totaal geschat**</td><td>**90–105 minuten**</td></tr></tbody></table>

</details>#### [▶️](https://www.roc.ovh/books/software-development-2025/page/intro-js) ***<span class="ng-star-inserted" data-start-index="2214"><span class="ng-star-inserted" data-start-index="2384"><span class="ng-star-inserted" data-start-index="0">Intro JS / Phoenix</span></span></span>***

🧠 In deze module duik je in de wereld van JavaScript – de taal die websites tot leven brengt.

Je leert hoe je met variabelen, functies en if/else-logica slimme en interactieve onderdelen maakt. Je gaat meteen praktisch aan de slag in de browserconsole en met HTML-bestanden, zodat je direct ziet wat jouw code doet.Laat je pagina reageren op wat de gebruiker doet, verwerk invoer uit formulieren en bouw je eigen berekeningen.

Met heldere uitleg, leuke opdrachten en reflectievragen leer je stap voor stap hoe jij een simpele website verandert in een echte interactieve webapp.

<details id="bkmrk-deze-module-kost-ong-7"><summary>Deze module kost ongeveer 80 minuten</summary>

<table id="bkmrk-onderdeel-tijd-%28in-m-6"><thead><tr><th>Onderdeel</th><th>Tijd (in minuten)</th></tr></thead><tbody><tr><td>Uitleg wat JavaScript is en hoe het werkt</td><td>10–15</td></tr><tr><td>Console openen en verkennen</td><td>10</td></tr><tr><td>Voorbeelden doornemen en uitvoeren</td><td>20</td></tr><tr><td>Opdracht: zelf experimenteren met `console.log`</td><td>25–30</td></tr><tr><td>Klassikale bespreking of korte quiz</td><td>10</td></tr><tr><td>**Totaal geschat**</td><td>**75–85 minuten**</td></tr></tbody></table>

</details>#### [▶️](https://www.roc.ovh/books/software-development-2025/page/snake-challenge) Snake <span style="color: rgb(35, 111, 161);">***<span class="ng-star-inserted" data-start-index="2214"><span class="ng-star-inserted" data-start-index="2384"><span class="ng-star-inserted" data-start-index="0">Challenge</span></span></span>***</span>

*<span class="ng-star-inserted" data-start-index="2214"><span class="ng-star-inserted" data-start-index="2384"><span class="ng-star-inserted" data-start-index="0">De portfolio Challenge combineert persoonlijk profileren met web design en daagt de student uit een eigen portfolio te maken.</span></span></span>*

<details id="bkmrk-deze-module-kost-ong-8"><summary>Deze module kost ongeeer 150 minute.</summary>

<table id="bkmrk-onderdeel-tijd-%28in-m-7"><thead><tr><th>Onderdeel</th><th>Tijd (in minuten)</th></tr></thead><tbody><tr><td>Opdracht lezen en onderwerp kiezen</td><td>15</td></tr><tr><td>Schets of opzet maken</td><td>15–20</td></tr><tr><td>HTML schrijven (structuur opzetten)</td><td>30–45</td></tr><tr><td>CSS toevoegen en verbeteren</td><td>30–45</td></tr><tr><td>(Optioneel) JavaScript toevoegen</td><td>30</td></tr><tr><td>Testen en bijschaven</td><td>20–30</td></tr><tr><td>Reflectie/samenvatting/afronding</td><td>10–15</td></tr><tr><td>**Totaal geschat (zonder JS)**</td><td>**120–150 minuten**</td></tr><tr><td>**Totaal geschat (met JS)**</td><td>**150–180 minuten**</td></tr></tbody></table>

</details>## <span class="ng-star-inserted" data-start-index="2214"><span class="ng-star-inserted" data-start-index="2384"><span class="ng-star-inserted" data-start-index="0">Blok 4 (web back-end)</span></span></span>

*<span class="ng-star-inserted" data-start-index="2214"><span class="ng-star-inserted" data-start-index="2384"><span class="ng-star-inserted" data-start-index="0">(ongeveer 7-8 uur)</span></span></span>*

#### [▶️](https://www.roc.ovh/books/software-development-2025/page/php-intro) <span style="color: rgb(35, 111, 161);">***<span class="ng-star-inserted" data-start-index="2214"><span class="ng-star-inserted" data-start-index="2384"><span class="ng-star-inserted" data-start-index="0">PHP - XAMPP</span></span></span>***</span>

🧩 In deze module leer je wat het verschil is tussen frontend (wat je ziet) en backend (wat er op de server gebeurt) – een belangrijke eerste stap richting echte webontwikkeling.

💻 Je installeert tools als XAMPP en Visual Studio Code om zelf lokaal met PHP aan de slag te gaan en je code te testen. Je maakt je eerste PHP-pagina’s, werkt met variabelen en teksten, en bouwt interactieve onderdelen zoals formulieren en een kortingscalculator.

Alle oefeningen zijn praktisch en helder opgebouwd, zodat je direct merkt wat je doet én waarom. Zo leer je echt webapplicaties bouwen, van de basis tot iets dat werkt!

<details id="bkmrk-deze-module-kost-ong-9"><summary>Deze module kost ongeveer 90 minuten</summary>

<table id="bkmrk-onderdeel-tijd-%28in-m-8"><thead><tr><th>Onderdeel</th><th>Tijd (in minuten)</th></tr></thead><tbody><tr><td>Uitleg over wat PHP is</td><td>10–15</td></tr><tr><td>Eerste regels code schrijven en testen</td><td>15</td></tr><tr><td>Uitleg over `echo` en variabelen</td><td>15</td></tr><tr><td>Opdrachten uitvoeren (3 à 4 opdrachten)</td><td>30–40</td></tr><tr><td>Testen, fouten zoeken en verbeteren</td><td>10–15</td></tr><tr><td>**Totaal geschat**</td><td>**80–100 minuten**</td></tr></tbody></table>

</details>#### [▶️](https://www.roc.ovh/books/software-development-2025/page/prompt-engineering-1) <span style="color: rgb(35, 111, 161);">***<span class="ng-star-inserted" data-start-index="2214"><span class="ng-star-inserted" data-start-index="2384"><span class="ng-star-inserted" data-start-index="0">Prompt Enineering</span></span></span>***</span>

<span class="ng-star-inserted" data-start-index="2214"><span class="ng-star-inserted" data-start-index="2384"><span class="ng-star-inserted" data-start-index="0">De module, "Prompt Engineering 1", dient als een handleiding voor het effectief communiceren met AI-modellen zoals ChatGPT. </span></span></span>

🧠 In deze module leer je hoe je beter kunt communiceren met AI, zoals ChatGPT. Je ontdekt dat hoe duidelijker en specifieker je vraag is, hoe beter het antwoord dat je krijgt.

Je werkt met zes belangrijke elementen van een goede prompt: context, details, duidelijkheid, doel, vorm en toon.

✍️ Door praktische voorbeelden en opdrachten leer je hoe je deze elementen toepast om slimme, gerichte vragen te stellen. Zo haal je meer uit AI en krijg je antwoorden die echt passen bij wat jij nodig hebt – handig voor school, projecten en later werk!

<details id="bkmrk-de-module-kost-ongev"><summary>De module kost ongeveer 90 minuten</summary>

<table id="bkmrk-onderdeel-tijd-%28in-m-9"><thead><tr><th>Onderdeel</th><th>Tijd (in minuten)</th></tr></thead><tbody><tr><td>Introductie prompt engineering</td><td>10–15</td></tr><tr><td>Voorbeelden en klassikale analyse</td><td>15</td></tr><tr><td>Tips bespreken</td><td>10</td></tr><tr><td>Opdrachten: prompts verbeteren + AI testen</td><td>30–40</td></tr><tr><td>Reflectie of klassikale bespreking</td><td>10–15</td></tr><tr><td>**Totaal geschat**</td><td>**80–95 minuten**</td></tr></tbody></table>

</details>#### [▶️](https://www.roc.ovh/books/software-development-2025/page/php-1-10p) <span style="color: rgb(35, 111, 161);">***<span class="ng-star-inserted" data-start-index="2214"><span class="ng-star-inserted" data-start-index="2384"><span class="ng-star-inserted" data-start-index="0">PHP 2</span></span></span>***</span>

In deze module leer je hoe je met PHP de achterkant van een website bouwt – alles wat de gebruiker niet ziet, maar wel gebeurt op de server.

Je leert veilig gegevens versturen via GET en POST, en hoe je je code slim organiseert met include en require. Met arrays en loops verwerk je makkelijk data, en met functies maak je je code herbruikbaar en overzichtelijk. Ook werk je met datum en tijd, en ontdek je hoe je sessies gebruikt om bijvoorbeeld een simpele login te maken met gebruikersgegevens.

Elke les bevat uitleg, opdrachten en reflectievragen waarmee je stap voor stap werkt aan je skills als webdeveloper.

<details id="bkmrk-de-module-kost-ongev-1"><summary>De module kost ongeveer 90 minuten</summary>

<table id="bkmrk-onderdeel-tijd-%28in-m-10"><thead><tr><th>Onderdeel</th><th>Tijd (in minuten)</th></tr></thead><tbody><tr><td>Uitleg over formulieren in HTML</td><td>15</td></tr><tr><td>Uitleg over `$_GET` en hoe data via URL binnenkomt</td><td>15</td></tr><tr><td>Eerste voorbeeld doornemen en uitvoeren</td><td>20</td></tr><tr><td>Opdracht uitvoeren: formulier maken + verwerken</td><td>25–30</td></tr><tr><td>Testen, fouten oplossen, extra uitdaging</td><td>10–15</td></tr><tr><td>**Totaal geschat**</td><td>**85–95 minuten**</td></tr></tbody></table>

</details>#### [▶️](https://www.roc.ovh/books/software-development-2025/page/php-challenge) <span style="color: rgb(35, 111, 161);">***<span class="ng-star-inserted" data-start-index="2214"><span class="ng-star-inserted" data-start-index="2384"><span class="ng-star-inserted" data-start-index="0">PHP Challenge</span></span></span>***</span>

🚀 In deze PHP Challenge laat je zien wat je hebt geleerd door zelf een mini-website te bouwen met echte backend-functies.

Je kiest zelf wat je maakt – bijvoorbeeld een persoonlijke site, quiz of simpele webshop – zolang het project maar voldoet aan de technische eisen.Denk aan meerdere PHP-pagina’s, het gebruik van formulieren, sessies, functies, arrays en loops.

Aan het eind laat je jouw project zien en reflecteer je op wat je hebt geleerd. Zo toon je niet alleen je resultaat, maar ook je groei als developer.

<details id="bkmrk-de-module-kost-ongev-2"><summary>De module kost ongeveer 110 minuten</summary>

<table id="bkmrk-onderdeel-tijd-%28in-m-11"><thead><tr><th>Onderdeel</th><th>Tijd (in minuten)</th></tr></thead><tbody><tr><td>Uitleg opdracht en doelen begrijpen</td><td>10–15</td></tr><tr><td>Zelf quizvragen bedenken en formulier opzetten</td><td>20–30</td></tr><tr><td>PHP-code schrijven om antwoorden te controleren</td><td>25–30</td></tr><tr><td>Score berekenen en tonen</td><td>15</td></tr><tr><td>Testen, debuggen en verbeteren</td><td>15–20</td></tr><tr><td>(Optioneel) Extra’s zoals feedback of styling</td><td>15–20</td></tr><tr><td>**Totaal geschat**</td><td>**100–130 minu**</td></tr></tbody></table>

</details>## <span class="ng-star-inserted" data-start-index="2214"><span class="ng-star-inserted" data-start-index="2384"><span class="ng-star-inserted" data-start-index="0">Blok 5 (</span></span></span><span class="ng-star-inserted" data-start-index="2214"><span class="ng-star-inserted" data-start-index="2384"><span class="ng-star-inserted" data-start-index="0">web back-end 2</span></span></span><span class="ng-star-inserted" data-start-index="2214"><span class="ng-star-inserted" data-start-index="2384"><span class="ng-star-inserted" data-start-index="0">)</span></span></span>

#### [▶️](https://www.roc.ovh/books/software-development-2025/page/prompt-engineering-2) <span class="ng-star-inserted" data-start-index="2214"><span class="ng-star-inserted" data-start-index="2384"><span class="ng-star-inserted" data-start-index="0">Prompt Engineering 2</span></span></span>

🧠 Deze module bouwt voort op wat je al weet over prompt engineering en neemt je mee naar <span class="s1">**geavanceerde technieken**</span>die je helpen AI écht slim in te zetten. Je werkt aan <span class="s1">**zes praktische strategieën**</span> die niet alleen je prompts verbeteren, maar ook je probleemoplossend denken scherpen

Met per techniek handige uitleg, voorbeeldprompts en opdrachten leer je niet alleen AI te sturen, maar ook zelf kritisch na te denken – handig voor complexe taken zoals prompt engineering.

Het resultaat? Jij weet hoe je met slimme prompts AI antwoorden krijgt die aansluiten op jouw situatie en leerbehoefte. Deze module is de perfecte springplank voor je Snake Challenge en verdere AI-projecten!

#### [▶️](https://www.roc.ovh/books/software-development-2025/page/js-dom1-8os) JavaScript 2 (DOM)

In deze module leer je hoe je met JavaScript de <span class="s1">**DOM**</span> (Document Object Model) kunt aanpassen om je webpagina interactiever te maken.

e leert HTML-elementen <span class="s1">**selecteren**</span> (zoals met <span class="s2">getElementById</span> of <span class="s2">querySelectorAll</span>) en de <span class="s1">**inhoud en stijl**</span> ervan aanpassen via JavaScript. Je oefent met <span class="s1">**events**</span>, zoals klikken en muisbewegingen, en leert reageren op gebruikersinput met <span class="s2">addEventListener </span>Je maakt nieuwe elementen aan (<span class="s2">createElement</span>) en voegt ze toe of verwijdert ze in de DOM met <span class="s2">appendChild</span>, <span class="s2">remove()</span> of <span class="s2">event.target</span>.<span class="Apple-converted-space"> </span>Met <span class="s2">classList.toggle</span> voeg je eenvoudig styling classes toe of haal je ze weg om interactie visueel te maken.<span class="Apple-converted-space"> </span>

Door stap-voor-stap opdrachten bouw je van basisselectie tot volledige interactiviteit – van tekst aanpassen, elementen markeren en dynamisch toevoegen tot verwijderen en style toggles. Zo leer je hoe je JavaScript écht kan inzetten om je pagina levendiger te maken.

#### [▶️](https://www.roc.ovh/books/software-development-2025/page/js-dom2) Javascript 3 (DOM)

In deze module duik je dieper in het <span class="s1">**DOM**</span>, een model dat jouw webpagina omzet in objecten waar JavaScript mee kan werken – de brug tussen HTML en interactieve code. Je gaat creatief aan de slag met het <span class="s1">**aanmaken, toevoegen en verwijderen van elementen**</span> (<span class="s2">createElement</span>, <span class="s2">appendChild</span>, <span class="s2">remove()</span>), en je leert hoe je attributen instelt of classes toggle’t voor dynamische effectjes Met opdrachten bouw je van basisselectie tot volledige interactiviteit: je markeert dingen, voegt nieuwe componenten toe of verwijdert ze, en maakt pagina’s echt levend

Het resultaat? Je krijgt niet alleen inzicht in hoe de DOM werkt, maar je krijgt ook de tools om je webpagina’s interactief te maken op een manier die echt gaat leven. Veel plezier met knutselen!

#### [▶️](https://www.roc.ovh/books/software-development-2025/page/java-script-challenge) JavaScript Challenge

In deze JavaScript Challenge bouw je een volledig interactieve webapp om je front-end skills te showen.

Je laat de DOM tot leven komen met events, functies en dynamische updates op basis van user-input. Kies je eigen concept—todo-app, quiz of mini-game—zolang je CRUD-acties en strakke UX gebruikt.

Presenteer je app, reflecteer op je code en bewijs dat jij JavaScript onder de knie hebt!

## <span style="color: rgb(181, 12, 0);">Blok 6 (Database / PDO)</span>

#### [▶️](https://www.roc.ovh/books/software-development-2025/page/database-1) <span style="color: rgb(35, 111, 161);">***<span class="ng-star-inserted" data-start-index="2214"><span class="ng-star-inserted" data-start-index="2384"><span class="ng-star-inserted" data-start-index="0">Database</span></span></span>***</span>

Deze module gaat over **databaseontwerp**. Het leidt de student stapsgewijs door de fundamentele concepten van databases, beginnend met **wat een database is** en waarom deze nodig is voor het organiseren van gegevens. De module introduceert cruciale terminologieën zoals **entiteiten en attributen**, legt het belang uit van een **Primary Key (PK)** voor unieke identificatie, en behandelt **1:N-relaties en Foreign Keys (FKs)** om tabellen te verbinden. Tot slot wordt dieper ingegaan op **datatypen**, de **modellering van realistische scenario's**, en de complexere **N:N-relaties**, waarbij het creëren van tussentabellen wordt uitgelegd voor optimale datastructuren.

#### [▶️](https://www.roc.ovh/books/software-development-2025/page/sql) <span style="color: rgb(35, 111, 161);">***<span class="ng-star-inserted" data-start-index="2214"><span class="ng-star-inserted" data-start-index="2384"><span class="ng-star-inserted" data-start-index="0">SQL</span></span></span>***</span>

In deze module ga je aan de slag met <span class="s1">**SQL en databases**</span>, zodat je leert hoe je data effectief opslaat, opvraagt en beheert.

Je start met de basis: wat SQL is en waarom het essentieel is voor het bouwen van dynamische webapplicaties. Je leert hoe je tabellen maakt en vult, hoe je specifieke gegevens ophaalt met <span class="s2">SELECT</span>, en hoe je data aanpast met <span class="s2">INSERT</span>, <span class="s2">UPDATE</span> en <span class="s2">DELETE</span>. Relaties tussen tabellen komen aan bod: je maakt query’s met <span class="s1">**JOINs**</span> om gegevens uit meerdere tabellen te combineren. Ook verdiep je je in belangrijke SQL-technieken zoals <span class="s1">**GROUP BY**</span>, <span class="s1">**WHERE**</span>, <span class="s1">**ORDER BY**</span>, en eenvoudige <span class="s1">**aggregatiefuncties**</span> zoals <span class="s2">COUNT()</span> en <span class="s2">SUM()</span>.

Door praktische oefeningen leer je hoe je SQL gebruikt om echte businessvragen te beantwoorden: van rapportages maken tot data-analyse in je database.

Het doel is dat je na deze module zelfstandig databasequery’s schrijft om informatiesystemen te bouwen die écht werken – een onmisbare skill voor elke developer!

#### [▶️](https://www.roc.ovh/books/software-development-2025/page/pdo) <span style="color: rgb(35, 111, 161);">***<span class="ng-star-inserted" data-start-index="2214"><span class="ng-star-inserted" data-start-index="2384"><span class="ng-star-inserted" data-start-index="0">PDO</span></span></span>***</span>

In deze module leer je werken met <span class="s1">**PDO**</span>, de moderne en veilige manier om met databases te praten in PHP. Je maakt verbinding met een database, voert queries uit en gebruikt <span class="s1">**prepared statements**</span> om SQL-injecties te voorkomen. Je oefent met data ophalen (<span class="s2">fetch</span>), invoegen, updaten en verwijderen – allemaal op een nette en herbruikbare manier. Ook kijk je hoe je PDO slim inzet in je eigen project, bijvoorbeeld met een klasse of in combinatie met forms.

Na deze module schrijf je zelfverzekerd veilige en nette databasecode – klaar voor het echte werk!

#### [▶️](https://www.roc.ovh/books/software-development-2025/page/crud-challenge) CRUD Challenges

In deze <span class="s1">**CRUD Challenge**</span> laat je zien wat je met PHP en PDO geleerd hebt door een werkende mini-website te bouwen – net als een echte developer.

🎯 Je kiest zelf een project, bijvoorbeeld een persoonlijke site, quiz of webshop, en bouwt dat in meerdere PHP-pagina’s. Daarbij pas je toe wat geleerd is: <span class="s1">**formulieren**</span>, <span class="s1">**arrays**</span>, <span class="s1">**loops**</span>, <span class="s1">**functies**</span> en <span class="s1">**sessies**</span> (voor inlog of winkelwagen).

## <span class="ng-star-inserted" data-start-index="2214"><span class="ng-star-inserted" data-start-index="2384"><span class="ng-star-inserted" data-start-index="0">Blok 7 (PHP Frameworks)</span></span></span>

#### [▶️](https://www.roc.ovh/books/software-development-2025/page/prompt-engineering-3) Prompt Engineering 3

Prompt Engineering 3 is een gedetailleerde handleiding voor **geavanceerde prompt-technieken** binnen softwareontwikkeling, specifiek gericht op het optimaliseren van interacties met AI-modellen. Het document bouwt voort op eerdere modules over basale promptkenmerken zoals **context, details, duidelijkheid, doelgerichtheid, vorm en toon**, en introduceert zes geavanceerde methoden. Deze omvatten het **gebruiken van rollen (role prompting)**, het vragen om **alternatieven of variaties**, **iteratief verbeteren** van antwoorden, het toepassen van **prompt templates**, het stimuleren van **zelfvragen (self-questioning)** door de AI, en het benutten van **kritiek als leermoment (prompt debugging)**. Het doel is gebruikers te leren hoe ze effectievere en relevantere output van AI kunnen verkrijgen door middel van strategische en kritische promptformulering.

#### [▶️](https://www.roc.ovh/books/software-development-2025/page/deployement) Deployement

Deze module leidt studenten stap voor stap door het proces van het online zetten van een website of webapplicatie. Belangrijke onderwerpen zijn het verkrijgen van **toegang tot PLESK**, een beheerpaneel voor webhosting, het **beveiligen van een domein met een SSL-certificaat** voor een veilige verbinding, en het **aanmaken van een FTP-account** om bestanden naar de server te uploaden. Verder wordt uitgelegd hoe een **database wordt aangemaakt** en hoe een zelfgebouwde webapplicatie **live wordt geïnstalleerd**, inclusief de noodzaak om databaseverbindingen aan te passen voor de live-omgeving.

#### [▶️](https://www.roc.ovh/books/software-development-2025/page/cms-oud-niet-meer-gebruiken) CMS

Wordpress is het meest gebruikte Content Management Systeem. Meer dan 43% van alle websites op internet draait op WordPress (stand juni 2025). In deze module leer je Wordpress installeren en daarnaast leer je alle basisconcepten van Wordpress.

#### [▶️](https://www.roc.ovh/books/software-development-2025/page/yii-introduction) Yii Intro

Deze module introduceert de basisprincipes van **webapplicatieontwikkeling** met behulp van het **Yii2 PHP-framework**. De tekst gidst de student door de installatie van Yii en essentiële tools zoals Composer en XAMPP, en demonstreert vervolgens hoe een **CRUD-applicatie** (Create, Read, Update, Delete) snel kan worden gegenereerd voor databasebeheer. Belangrijke concepten zoals het **MVC-architectuurpatroon** (Model-View-Controller) en **routing** worden uitgelegd, waarbij de structuur van een webapplicatie en de manier waarop URL's worden afgehandeld duidelijk worden gemaakt.

Tot slot wordt dieper ingegaan op het aanpassen van de specifieke Yii-gebruikersinterface via de **Gridview-widget**, waardoor de student leert hoe kolommen, labels en inhoud dynamisch kunnen worden beheerd.

## <span class="ng-star-inserted" data-start-index="2214"><span class="ng-star-inserted" data-start-index="2384"><span class="ng-star-inserted" data-start-index="0">Blok 8</span></span></span>

#### ▶️ Prompt Engineering 4

Inhoud nog nader te bepalen.

#### [▶️](https://www.roc.ovh/books/software-development-2025/page/cyber-security-1) Cyber Security 1, 

*"Deze lessen zijn ontworpen om studenten niet alleen theoretische kennis bij te brengen, maar ook praktische vaardigheden en een kritische houding ten aanzien van digitale veiligheid."*


In deze module stap je in de wereld van <span class="s1">**cybersecurity**</span> – een wereld waarin hackers, virussen en datadieven dagelijks op de loer liggen. Maar geen zorgen: jij leert hoe je je daartegen kunt verdedigen.

We beginnen met een duidelijke uitleg van de <span class="s1">**grootste gevaren op internet**</span>, zoals <span class="s1">**phishing**</span> en <span class="s1">**malware**</span>. Je ontdekt hoe eenvoudig het soms is om iemand te misleiden – en hoe jij dat dus kunt herkennen én voorkomen.

Daarna duiken we in de techniek achter <span class="s1">**veilige websites**</span>: wat doet dat slotje in je browser precies? Wat is <span class="s1">**HTTPS**</span>, en waarom zijn <span class="s1">**SSL-certificaten**</span> belangrijk? Je leert hoe versleuteling werkt, met zowel <span class="s1">**symmetrische als asymmetrische encryptie**</span>.

We laten je zien waarom wachtwoorden alleen hashen <span class="s1">**niet genoeg is**</span> – en waarom een beetje “salt” het verschil maakt tussen veilig en kwetsbaar. Ook onderwerpen als <span class="s1">**Rainbow Tables**</span> en <span class="s1">**Brute Force-aanvallen**</span> komen voorbij, mét strategieën om ze tegen te houden.

#### [▶️](https://www.roc.ovh/books/software-development-2025/page/oop) OOP

In deze module leer je het verschil tussen procedureel programmeren (zeg maar 'gewoon' programmeren) en **OOP**.

Deze module is een voorbereiding op het leren omgaan met Frameworks zoals Yii2, Laravel, Flask, etc. etc.

Met **OOP** kun je code beter **organiseren**, deze **herbruiken** en je programma makkelijker uitbreidbaar maken. Je leert complexe systemen op te splitsen in beheersbare blokken met behulp van concepten als **klassen**, **objecten**, **properties** en **methods**.

**Constructors** zorgen ervoor dat je automatisch waarden kunt toekennen bij het aanmaken van objecten, wat efficiëntie bevordert. Bovendien biedt **encapsulation** de mogelijkheid om data te beschermen, waardoor fouten worden voorkomen en je gecontroleerde toegang tot eigenschappen krijgt via **getters** en **setters**.

#### [▶️](https://www.roc.ovh/books/software-development-2025/page/oop-challenge) OOP Challenge

<span class="ng-star-inserted" data-start-index="0">De </span><span class="bold ng-star-inserted" data-start-index="3">OOP Challenge</span><span class="ng-star-inserted" data-start-index="16"> is een fantastische kans om jouw vaardigheden in **objectgeoriënteerd programmeren** (OOP) naar een hoger niveau te tillen en direct toe te passen in de praktijk.</span><span class="ng-star-inserted" data-start-index="174"> Je combineert je **Cyber Security** vaardigheden met de **OOP** vaardigheden.</span>

<span class="ng-star-inserted" data-start-index="174">Je hebt de **keuze** uit twee boeiende projecten; </span><span class="ng-star-inserted" data-start-index="174">Je kunt een login systeem maken of je kunt een Complete Mobiele ToDo manager maken.</span>

\--

##### Versnellen

Versnellen: [https://www.roc.ovh/books/overig-notes/page/versnellen](https://www.roc.ovh/books/overig-notes/page/versnellen)

##### Kennis-Check

Kennis-Checks: [https://www.roc.ovh/books/overig-notes/page/kennis-checks](https://www.roc.ovh/books/overig-notes/page/kennis-checks)