Programmeren(1)

advertisement
Objectgeoriënteerd
Programmeren
1
Tot nu toe
• “Ouderwetse” manier van programmeren
– Imperatief programmeren (in Java)
– Programmeren in volgorde
– Goed om basis te leren
– Bij grote programma’s:
Onoverzichtelijke code
2
Nu
• Nieuw paradigma:
– Object georiënteerd programmeren
– Programmeren in onafhankelijke
blokken
– Programmeertaal: Greenfoot (dit is
stiekem gewoon Java!)
3
Waarom OO programmeren?
• Grotere programma’s -> meer structuur
– Meerdere programmeurs tegelijk
– Hergebruik van code (bibliotheken)
– Denken in Objecten is eigenlijk heel
natuurlijk -> De echte wereld zit er vol mee
• Werken met objecten biedt die benodigde
structuur:
– Objecten: Modulaire opbouw (bouwblokken)
4
OO = Koekjes bakken!
• Maak 1 mal
• Maak zoveel
koekjes als je wilt
met de mal
• YUM!
5
Objecten
• Een Object:
– Bezit eigenschappen (variabelen)
– Kan bewerkingen ondergaan (methodes)
6
Klassen --> Objecten
• Een Klasse is een definitie (de mal)
– Beschrijft eigenschappen
– Beschrijft bewerkingen
• Een Object is een instantie van een
klasse (de koekjes!):
– Van 1 klasse meerdere instanties
7
Voorbeeld Klasse: stoel
• Eigenschappen (instance variabelen):
– Aantal poten
– Positie-x
– Positie-y
• Bewerkingen (methoden):
– Verplaatsen
8
public class Stoel {
// Instance variabelen
int aantalPoten;
int x;
int y;
VB: Java klasse Stoel
//constructor (speciale methode om het object te “maken”)
public Stoel(int poten, int xPositie, int yPositie)
{
aantalPoten = poten;
x = xPositie;
y = yPositie;
}
//methode
public verplaats(int xPositie, int yPositie)
{
x = xPositie;
y = yPositie;
}
}
9
Objecten maken van een Klasse
• Nu er een klassedefinitie is, kunnen
er objecten van worden gemaakt
• Dit is vergelijkbaar met variabelen:
• int mijnInt = 86;
• Stoel mijnStoel = new Stoel(4, 100, 150);
• Stoel nogEenStoel = new Stoel(3, 50, 50);
10
Objecten gebruiken
• Bij het aanmaken van een object
wordt de constructor methode
uitgevoerd
• Van een object kunnen vervolgens de
methoden worden aangeroepen:
• mijnStoel.verplaats(20, 40);
• nogEenStoel.verplaats(86, 34);
11
Lessen: Greenfoot
• Greenfoot is een grafische uitbreiding
van Java
• Maakt objecten “tastbaar”
• Onder de motorkap zit gewone
Javacode
• Hier ga je stapsgewijs mee aan de slag
• Theorietoets in toetsweek
• PO greenfoot
12
Download