De presentatielaag ....................................................................................................................................................... 23
De domeinlaag ............................................................................................................................................................. 24
De persistentielaag ...................................................................................................................................................... 24
TESTEN..................................................................................................................................................... 26
UNIT TESTEN .......................................................................................................................................................... 26
UP & TDD ..................................................................................................................................................................... 26
FIRST eigenschappen...................................................................................................................................... 26
Fast ............................................................................................................................................................................... 26
Isolated ........................................................................................................................................................................ 26
Repeatable ................................................................................................................................................................... 26
Self validating ............................................................................................................................................................... 26
Timely........................................................................................................................................................................... 26
Structuur ........................................................................................................................................................ 27
Voorbeeld .................................................................................................................................................................... 27
Ontwerp technieken ....................................................................................................................................... 27
Equivalentiepartities .................................................................................................................................................... 28
Grenswaarden.............................................................................................................................................................. 28
Equivalentiepartitionering en grenswaardenanalyse gaan hand in hand ................................................................... 28
@before ....................................................................................................................................................................... 29
PIJLERS VAN OO ....................................................................................................................................... 30
DE VIER PIJLERS VAN OO .......................................................................................................................................... 30
OVERERVING .......................................................................................................................................................... 30
POLYMORFISME ...................................................................................................................................................... 34
Kracht van polymorfisme: dynamische binding ............................................................................................. 34
Waarom polymorfisme? ................................................................................................................................ 35
ABSTRACTE KLASSEN ................................................................................................................................................ 36
Abstractie operatie ........................................................................................................................................ 36
Nut van een constructor in een abstracte klasse ........................................................................................... 37
INTERFACES ............................................................................................................................................................ 37
Voorbeeld ....................................................................................................................................................... 37
Gebruik van interfaces ................................................................................................................................... 38
Gebruik abstracte klasse – interface.............................................................................................................. 38
3
,Jakob Lierman OO Ontwerpen I
Klassen en objecten
Inleiding
Sleutelconcept: object
Real-world objecten:
kunnen onderscheiden worden
hebben eigenschappen
Kunnen benoemd worden, hebben een waarde (die kan veranderen)
hebben een gedrag
Omvat wat het object kan doen, kan eigenschappen veranderen via uitvoeren
Real-life objecten:
interactie tussen veranderende objecten
een object kan een ander object vragen om iets te doen
Abstractie is essentieel
Via abstractie ontstaan soorten of types van objecten
Soortgelijke objecten hebben dezelfde eigenschappen en hetzelfde gedrag
Sleutelconcept: klasse
Bevat de omschrijving van de eigenschappen en het gedrag van soortgelijke objecten
Een object is een instantie van een klasse: Horloge1 is een instantie van PolsHorloge
Tijdens ontwikkeling van software worden de klassen ontworpen, tijdens de uitvoering ervan komen
de objecten tot leven.
Objecten
Alles is 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
Een applicatie bestaat uit objecten die samenwerken, tussen die objecten zijn er dus relaties
Toestand van een object
Omvat alle eigenschappen en de huidige waarde van deze eigenschappen van het object
Toestand evolueert mogelijks met de tijd
Toestand kan gewijzigd of opgevraagd worden
Toestand verschilt mogelijks van object tot object
Is omschreven in zijn klasse
Elke eigenschap wordt voorgesteld door een attribuut, bestaande uit een naam en een typen
Gedrag van een object
Gedrag is wat het object kan doen
Objecten sturen en ontvangen boodschappen van andere objecten, waarna er een gedrag wordt
uitgevoerd
Elke dienst die een object aanbiedt wordt omschreven via een methode
4
, Jakob Lierman OO Ontwerpen I
Een klasse bevat de opsomming van alle methodes
Het gedrag wordt gecodeerd en niet getoond in de klasse
Een methode heeft een naam, eventuele parameter(s), een eventueel returntype en een code die
de reactie beschrijft
Vier soorten operaties
Constructors: objecten aanmaken
Setters: eigenschappen van objecten veranderen
Getters: eigenschappen van objecten opvragen
Acties: andere acties op objecten uitvoeren
Identiteit van een object
Maakt het mogelijk om objecten van elkaar te onderscheiden
Twee objecten met dezelfde eigenschappen blijven uniek
Relaties tussen objecten
Interactie tussen objecten is enkel mogelijk als objecten elkaar kennen en worden gerealiseerd door
relaties tussen objecten
Verantwoordelijkheid van een object
Elk object draagt deels verantwoordelijkheid voor het geheel
5
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 jakoblierman. Stuvia facilitates payment to the seller.
Will I be stuck with a subscription?
No, you only buy these notes for $4.31. You're not tied to anything after your purchase.