Dit is een vrij uitgebreide samenvatting van het vak OO Ontwerpen I in de richting Toegepaste Informatica van de Hogeschool Gent.
Normaalgezien staat alles hier in wat theorie betreft. Uiteraard is het ook belangrijk dat je de oefeningen maakt die in de les aan bod kwamen maar deze samenvatting za...
OO Ontwerpen Samenvatting
H1: Objecten en klassen
1. Inleiding
• Objectgeoriënteerd werken sluit nauw aan bij de werkelijkheid
• Sleutelconcept: object
• Met ‘real-world’ objecten zijn we reeds vertrouwd
o Kunnen onderscheiden worden van elkaar
o Hebben eigenschappen
§ Kunnen benoemd worden
§ Hebben een waarde
• Kan veranderen
• Deze kunnen op zichzelf weerom een object zijn
o Hebben een gedrag
§ Omvat wat het object kan doen
§ Via uitvoeren van gedrag kunnen de eigenschappen van een object
veranderen
• ‘Real life’
o Complexe interactie tussen veranderende objecten
• Software objecten zijn een weerspiegeling van ‘real world’ objecten
o Ze kunnen onderscheiden worden
o Ze hebben eigenschappen
o Ze hebben gedrag
• Software toepassingen zijn gelijkaardig aan ‘real life’
o Complexe interactie tussen veranderende objecten
o Interactie tussen objecten
§ Een object kan een ander object vragen om iets te doen
• In werkelijkheid is abstractie essentiëel
o Niveau van detail
o Context
• Via abstractie ontstaan soorten of types van objecten
• Soortgelijke objecten hebben
o Dezelfde eigenschappen
o Hetzelfde gedrag
• Sleutelconcept: klasse
o Een klasse bevat de omschrijving van de eigenschappen en het gedrag van
soortgelijke objecten
o Is een abstractie
o Een object is een instantie van een klasse
• Tijdens software ontwikkeling
o Wordt nagedacht over objecten uit de werkelijkheid, hun gemeenschappelijke
eigenschappen en gedrag
o Worden klassen ontworpen
o Worden klassen geïmplementeerd
1
, OO-Ontwerpen Samenvatting
• Tijdens de uitvoering van de software
o Komen objecten tot leven
o Objecten worden gecreëerd, worden geconsulteerd, voeren operaties uit,
werken samen, veranderen, voeren taken uit, worden vernietigd,…
2. Objecten
• In de OO-wereld is alles een object. Een object wordt beschreven door een klasse. Een
object is een instantie van een klasse.
• Elk object heeft een toestand, een gedrag en een identiteit
o Toestand omvat
§ Alle eigenschappen van het object
§ De huidige waarde voor elk van deze eigenschappen
o De toestand van een object is omschreven in zijn klasse
§ Elke eigenschap wordt voorgesteld door een attribuut
§ Een attribuut bestaat uit een naam en een type.
• Type: het type bepaalt de mogelijke waarden voor deze
eigenschap
o Boolean: ja/nee
o Int: gehele getallen
o String: karakterstrings
o Flat: kommagetallen
o Double: kommagetallen
• Samengevat:
o Een object heeft een toestand
§ De toestand omvat alle eigenschappen van de klasse samen met de
actuele waarde
§ De toestand evolueert mogelijks met de tijd
§ De toestand kan gewijzigd of opgevraagd worden door gedrag
§ De toestand verschilt mogelijks van object tot object
o De toestand van een object wordt omschreven in zijn klasse
• Een object heeft een gedrag
o Diensten die het object aanbiedt
o Wat het object kan doen
• Objecten sturen boodschappen naar objecten
o Zo doet een object beroep op de dienst van een ander object
• Objecten ontvangen boodschappen van objecten
o Een object doet iets op vraag van een ander object
o Als reactie op ontvangen boodschap voert een object gedrag uit
2
, OO-Ontwerpen Samenvatting
• Elke dienst die een object aanbiedt wordt omschreven via een methode
o Elke methode beschrijft een welomlijnde, duidelijk afgebakende taak
• De klasse bevat de opsomming van alle methodes die objecten van die klasse aanbieden
• Het gedrag wordt gecodeerd en niet getoond in de klasse
• Een methode declaratie heeft
o Een naam
§ Een identifier
§ Een werkwoord in gebiedende wijs
o Eventuele parameter(s)
§ Laten toe extra informatie met een boodschap te versturen
§ Elke parameter heeft een naam en een type
o Eventueel returntype
§ Laten toe een resultaat terug te keren
§ We bepalen het type van de terugkeerwaarde
o Code die de reactie beschrijft
§ = implementatie
• We onderscheiden vier soorten operaties
o Operaties om nieuwe objecten aan te maken = CONSTRUCTOR
§ Laten ons toe objecten te instantiëren in een initieel geldige toestand
§ Worden gebruikt om nieuwe objecten aan te maken
§ Eventuele informatie die nodig is om een object aan te maken wordt
doorgegeven via parameters
• Kan noodzakelijk zijn om een initieel geldige toestand te
garanderen.
3
Voordelen van het kopen van samenvattingen bij Stuvia op een rij:
√ Verzekerd van kwaliteit door reviews
Stuvia-klanten hebben meer dan 700.000 samenvattingen beoordeeld. Zo weet je zeker dat je de beste documenten koopt!
Snel en makkelijk kopen
Je betaalt supersnel en eenmalig met iDeal, Bancontact of creditcard voor de samenvatting. Zonder lidmaatschap.
Focus op de essentie
Samenvattingen worden geschreven voor en door anderen. Daarom zijn de samenvattingen altijd betrouwbaar en actueel. Zo kom je snel tot de kern!
Veelgestelde vragen
Wat krijg ik als ik dit document koop?
Je krijgt een PDF, die direct beschikbaar is na je aankoop. Het gekochte document is altijd, overal en oneindig toegankelijk via je profiel.
Tevredenheidsgarantie: hoe werkt dat?
Onze tevredenheidsgarantie zorgt ervoor dat je altijd een studiedocument vindt dat goed bij je past. Je vult een formulier in en onze klantenservice regelt de rest.
Van wie koop ik deze samenvatting?
Stuvia is een marktplaats, je koop dit document dus niet van ons, maar van verkoper bert16. Stuvia faciliteert de betaling aan de verkoper.
Zit ik meteen vast aan een abonnement?
Nee, je koopt alleen deze samenvatting voor €6,49. Je zit daarna nergens aan vast.