3. Ontwerpprincipes Flashcards

1
Q

Wie moet verantwoordelijk zijn voor het verschaffen van de informatie? (principe van de information expert)

A

Geef de verantwoordelijkheid aan het object dat natuurlijkerwijze over de informatie zal beschikken.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Wie moet er verantwoordelijk zijn voor het creëren van een nieuwe instantie van een bepaalde klasse? (creator)

A

Wijs de verantwoordelijkheid voor het creëren van een nieuwe instantie van A toe aan de klasse B als één van e volgende beweringen waar is:
+ B is een verzameling van objecten A.
+ B bevat objecten van A.
+ B registreert instanties van A.
+ B maakt nauw gebruik van objecten A.
+ B beschikt over de initialisatiegegevens die nodig zijn bij de creatie van A.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Hoe zorgen we ervoor dat de afhankelijkheid tussen objecten laag blijft, dat de impact van veranderingen minimaal is en dat hergebruik van klassen mogelijk wordt?

A

Wijs de verantwoordelijkheden zo toe dat er een lage koppeling is tussen klasse.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Wat zijn de nadelen van klassen met een hoge koppeling?

A

+ Veranderingen in die andere klassen leiden tot veranderingen in de betrokken klasse.
+ De klasse is moeilijk te begrijpen.
+ De klasse kan moeilijker elders opnieuw gebruikt worden omdat ook de aanwezigheid van die andere klassen verondersteld wordt.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Wat is een controllerklasse?

A

Een klasse die instaat voor de uitvoering van een bepaalde gebeurtenis.
De controllerklasse kent alle domeinklassen die bij die gebeurtenis betrokken zijn, weet welk precondities er getest moeten worden en weet welke operaties er bij de betrokken klassen uitgevoerd moeten worden om de gebeurtenis uit te voeren.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Hoe kunnen we complexiteit beheersbaar houden? Hoe kunnen we ervoor zorgen dat een complexe applicatie begrijpelijk en goed onderhoudbaar wordt?

A

Zorg ervoor dat klassen een hoge cohesie vertonen, dit wil zeggen: zorg ervoor dat een klasse een beperkt aantal duidelijk samenhangende verantwoordelijkheden heeft.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly