Eindterm 32: Programmeren
Een computerprogramma is een serie instructies aan het verwerkingscentrum van een computer of robot met als doel een zeker effect te bewerkstelligen. De instructies van een computerprogramma worden geschreven in een bepaalde programmeertaal. De programmeertaal bevat een verzameling standaardinstructies, die de programmeur ter beschikking staan.
In veel gevallen kan een standaardinstructie alleen uitgevoerd worden met aanvullende informatie. Zo moet bij een bepaalde rekeninstructie aangegeven worden met welke getallen de instructie uitgevoerd moet worden (of waar deze getallen te vinden zijn in geheugen van de computer).
Als het programmabestand aan een computer wordt aangeboden, zorgt specifieke software voor een vertaling van de programma-instructies naar één of meer instructies die het verwerkingscentrum van de computer of robot kan uitvoeren. Na vertaling volgt de uitvoering van deze instructies onder regie van het besturingssysteem van de uitvoerende computer in de volgorde die de programmeur heeft voorgeschreven.
In de loop van de jaren zijn er talrijke programmeertalen ontstaan en ook weer verdwenen. Deze handreiking bevat geen aanbeveling voor een specifieke taal. Wel wordt voorgesteld af te zien van zogenaamde assembleertalen, waarbij de programmeur precieze kennis moet hebben van de opbouw van het verwerkingscentrum van zijn computer. De zogenaamde derde generatietalen vereisen deze kennis niet en bieden in het algemeen een goed platform voor het leren van enkele eenvoudige programmeertechnieken.
Belangrijke elementen van een programmeertaal van de derde generatie zijn:
- variabelen: invoergegevens, tussenresultaten van bewerkingen en uitvoergegevens kunnen tijdelijk worden opgeslagen in het verwerkingscentrum van de computer. De opslaglocatie wordt aangeduid met een variabele. Als een variabele in computerprogramma een bepaalde waarde heeft aangenomen, wil dat zeggen dat die waarde opgeslagen is op de locatie die door de variabele aangeduid wordt.
Een object georiënteerde programmeertaal kent in principe geen variabelen, maar objecten, die niet alleen een waarde kunnen aannemen, maar ook eigen gedrag vertonen ten aanzien van de opgeslagen waarde(n). - datatypering: de waarden die variabelen kunnen aannemen zijn beperkt. In het geval getracht wordt aan een variabele een waarde toe te kennen die niet aan deze beperking voldoet, volgt een foutmelding.
- opeenvolging: instructies die na elkaar in het programma staan, worden in de aangegeven volgorde uitgevoerd.
- keuze: in een programma kan getoetst worden of op zeker moment voldaan wordt aan een voorwaarde. Afhankelijk van het toetsresultaat wordt de ene serie of een andere serie instructies uitgevoerd.
- herhaling: een serie instructies wordt, in het geval aan een bepaalde voorwaarde voldaan wordt, nul keer of vaker uitgevoerd.
- procedures en functies: een serie instructies kan samengenomen worden en tezamen onder een eigen naam toegevoegd worden aan de standaardinstructies van de programmeertaal.
Voorgesteld wordt dat de leerlingen ten minste inzicht verwerven in variabelen (desgewenst: objecten), opeenvolging en keuze en dit inzicht kunnen toepassen bij de ontwikkeling van een programma.
De complexiteit van een programma kan op verschillende wijzen uitgedrukt worden. Een tamelijk overzichtelijke maat is het aantal regels programmacode, waarbij elke instructie één regel omvat (en eventuele commentaarregels niet meegeteld worden). Voorgesteld wordt om de complexiteit van door leerlingen te ontwikkelen programmatuur te beperken tot enkele tientallen regels code.