Basisprincipes van programmeren¶
Programmeren draait om ideeën, niet om syntaxis. De concepten die je hier leert — variabelen, operatoren, branching, loops, functies en datastructuren — zijn universeel. Ze werken in elke taal. De taal is alleen het gereedschap waarmee je die ideeën uitdrukt.
Op deze pagina’s vergelijken we JavaScript, Python en Arduino (.ino) naast elkaar, zodat je de principes ziet — niet de taal.
De twee talen vergeleken¶
JavaScript draait in de browser en is dé taal van het web. In deze kennisbank gebruiken we het ook via p5.js voor creatief programmeren en animatie.
Werkomgeving starten:
- Open een browser → druk op F12 → ga naar Console → plak je code.
- Of gebruik de p5.js editor voor p5.js voorbeelden.
Kenmerken:
- Dynamisch getypt: je hoeft het type niet te vermelden.
- Codeblokken worden afgebakend met
{}accolades. - Regels eindigen (optioneel) met
;. - Output naar de console:
console.log(...)of in p5.js:print(...).
Python is een veelzijdige taal die veel wordt gebruikt voor data science, webdevelopment (Flask/Django) en scripting. De syntax is bewust eenvoudig gehouden.
Werkomgeving starten:
- Installeer Python via python.org (zet “Add to PATH” aan bij installatie op Windows).
- Start de interactieve modus (REPL) door
pythonte typen in je terminal. - Of schrijf een
.pybestand en voer het uit metpython mijnscript.py.
Kenmerken:
- Dynamisch getypt: je hoeft het type niet te vermelden.
- Codeblokken worden afgebakend door inspringing (indentation) — geen accolades.
- Regels eindigen zonder
;. - Output:
print(...).
Arduino gebruikt C/C++-syntax in een .ino bestand. Je code draait op een microcontroller en gebruikt meestal setup() (eenmalig) en loop() (steeds opnieuw).
Werkomgeving starten:
- Installeer de Arduino IDE.
- Sluit je board aan via USB en kies board + poort.
- Gebruik
Serial.begin(...)insetup()enSerial.println(...)voor output in de Serial Monitor.
Kenmerken:
- Statisch getypt: je kiest types zoals
int,float,bool. - Codeblokken worden afgebakend met
{}accolades. - Regels eindigen met
;. - Hardwaregerichte functies zoals
pinMode,digitalRead,digitalWrite.
Syntaxvergelijking op een rij¶
| Concept | JavaScript | Python | Arduino (.ino) |
|---|---|---|---|
| Variabele declareren | let x = 5; |
x = 5 |
int x = 5; |
| Constante | const PI = 3.14; |
PI = 3.14 (conventie: HOOFDLETTERS) |
const float PI = 3.14; |
| Output | console.log(x) |
print(x) |
Serial.println(x) |
| Commentaar | // tekst |
# tekst |
// tekst |
| Codeblok | { ... } accolades |
inspringing (4 spaties) | { ... } accolades |
| Stringopbouw | `Hallo ${naam}` |
f"Hallo {naam}" |
"Hallo " + naam |
| Regeleinde | ; (optioneel) |
geen | ; (verplicht) |