Wat nieuwe hoofdstukken toegevoegd

This commit is contained in:
Bram van der Veen 2015-12-29 19:26:33 +01:00
parent 128eeeddf4
commit e23dd585c8
2 changed files with 15 additions and 2 deletions

View file

@ -0,0 +1,13 @@
#### Koekjesvorm
---
#### Waarom moeilijk doen als het ook makkelijk kan?
Je hebt tot nu toe gelezen wat er allemaal gebeurd als je rooster wordt opgevraagd. In de laatste stap hadden we het over zogenaamde "templates" of koekjesvorm. Dit is een versimpelde progammatuur die informatie sorteerd. Niet zoals eerst met zoeken van informatie, maar het laten zien daarvan. Je geeft een template een set van informatie, en dit template gaat dan aan de hand van hoe het geschreven is, de informatie op een bepaalde manier laten zien. Het is als een soort van koekjesvorm omdat je eigenlijk de informatie behandelt als je deeg. Je hebt heel veel deeg, maar uiteindelijk druk je er allemaal verschillende vormpjes uit waardoor je koekjes er anders uit komen. Zo kan Werkmanrooster snel en simpel een rooster van heel veel verschillende mensen ophalen en laten zien, zonder elke leerling apart te programeren.
---
#### Formules en functies.
Hoe een templaat werkt is eigenlijk hetzelfde als bij wiskundige formules. Je hebt gewoon een soort standaard manier van werken met een variabele. We nemen als voorbeeld de formule `y = x + 2`. Iedereen weet wat er gebeurd met `y` als je x veranderd. `y` is dan gewoon `x` plus twee erbij. Bij templates bij rooster.io werkt het vrijwel hetzelfde, maar in plaats van een wiskundige formule, is het een hele lange formule die niet alleen cijfers kan verwerken maar ook woorden en zinnen. Ik kan bijvoorbeeld iemand groeten die zijn rooster bezoekt door het variabele van zijn naam te gebruiken in zo'n templaat. Het templaat is dan bijvoorbeeld `Hallo {naam}, hoe gaat het met jou?`. Ik voer dan voor het variabele `naam` dan de naam van de rooster opvrager. Op die manier krijg ik dus bijvoorbeeld `Hallo Bert, hoe gaat het met jou?` als het variabele naam gelijk staat aan `Bert`. Deze templaten zijn echter geschreven in een taal die dit soort vergelijkingen makkelijk leesbaar maakt voor de programeur. Maar in plaats van dat we alleen woorden en zinnen in elkaar gaan zetten met de variabelen, gaan we dat ook doen met webpagina's. Laten we eens bekijken hoe zo'n templaat er uit ziet.
---
[Volgende >>](#)

View file

@ -15,7 +15,7 @@ Hij bekijkt het bestand en richt zich gelijk op de laatste waarde van het bestan
---
#### Roosters als templaten
Rooster.io gaat ook verder. Hij gaat verder door het bestand uit de database te verwerken. Hij doet hetzelfde als de collega in het verhaal hierboven. Hij knipt en plakt het rooster in een nieuw jasje. Hij gaat naar de link die is gegeven in het bestand en download het daar gevonden rooster als tekstbestand. Vervolgens gaat hij door dit tekstbestand heen om het rooster uit te vissen. Hij vertaalt dan deze door mensen te lezen informatie, in een soortgelijk [database bestand](http://werkmanrooster.nl/api/schedule?name=16374) zodat een computer het kan lezen. Dan stopt het systeem deze informatie in een "template". Een template is eigenlijk een soort koekjesvorm. Het zorgt ervoor dat de informatie die er in word gestopt er in een bepaalde vorm er uit komt. In ons geval is dat een webpagina.
#### Roosters als koekjesvorm
Rooster.io gaat ook verder. Hij gaat verder door het bestand uit de database te verwerken. Hij doet hetzelfde als de collega in het verhaal hierboven. Hij knipt en plakt het rooster in een nieuw jasje. Hij gaat naar de link die is gegeven in het bestand en download het daar gevonden rooster als tekstbestand. Vervolgens gaat hij door dit tekstbestand heen om het rooster uit te vissen. Hij leest dit bestand volgens een bepaald algoritme. Dit algoritme is voorgeprogrameerd om bepaalde informatie er uit te halen. De informatie die verkregen word uit de webpagina is bijvoorbeeld de rooster informatie. Dit zijn dingen zoals welk uren je welke lessen hebt met welke docenten en in welk lokaal. Het algoritme verkijgt ook informatie zoals het naam van het rooster. Hij vertaalt dan deze door mensen te lezen informatie, in een soortgelijk [database bestand](http://werkmanrooster.nl/api/schedule?name=16374) zodat een computer het kan lezen. Het verschil in database bestanden tussen een rooster en die van een leerling, is het verschil van inhoud. Een database bestand van een leerling houdt informatie vast over de leerling, terwijl een database bestand van een rooster informatie vasthoud over een specifiek rooster. Dan stopt het systeem deze informatie in een "template". Een template is eigenlijk een soort koekjesvorm. Het zorgt ervoor dat de informatie die er in word gestopt er in een bepaalde vorm er uit komt. In ons geval is dat een webpagina.
[Volgende >>](#)