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
The benefits of buying summaries with Stuvia:
Guaranteed quality through customer reviews
Stuvia customers have reviewed more than 700,000 summaries. This how you know that you are buying the best documents.
Quick and easy check-out
You can quickly pay through credit card or Stuvia-credit for the summaries. There is no membership needed.
Focus on what matters
Your fellow students write the study notes themselves, which is why the documents are always reliable and up-to-date. This ensures you quickly get to the core!
Frequently asked questions
What do I get when I buy this document?
You get a PDF, available immediately after your purchase. The purchased document is accessible anytime, anywhere and indefinitely through your profile.
Satisfaction guarantee: how does it work?
Our satisfaction guarantee ensures that you always find a study document that suits you well. You fill out a form, and our customer service team takes care of the rest.
Who am I buying these notes from?
Stuvia is a marketplace, so you are not buying this document from us, but from seller bert16. Stuvia facilitates payment to the seller.
Will I be stuck with a subscription?
No, you only buy these notes for $7.04. You're not tied to anything after your purchase.