Design Patterns Flashcards

(28 cards)

1
Q

Wat is een factory?

A

Een factory is een functie, methode of klasse die iets creëert, meestal objecten.

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

Noem twee voordelen van het gebruik van een factory.

A
  • Scheiding van creatie en gebruik
  • Losse koppeling
  • Eenvoudig wisselen van implementaties
  • Betere testbaarheid
  • Centrale controle over creatieproces
  • Open/closed principe
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Wat is een creation method?

A

Een methode die objecten creëert, vaak een wrapper voor de constructor.

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

Wat is het doel van een static creation method?

A

Om een creatiemethode aan te roepen zonder een objectinstantie van de klasse te creëren.

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

Wanneer gebruik je het Simple Factory Pattern?

A
  • Eenvoudige objectcreatie centraliseren
  • Voorbereiding op complexere patronen
  • Beperking van directe new-aanroepen
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Wat is het verschil tussen Factory Method en Abstract Factory?

A

Factory Method maakt één producttype aan via subklassen; Abstract Factory maakt meerdere gerelateerde producttypes aan.

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

Wat is het doel van het Strategy Pattern?

A

Om gedrag los te koppelen van de context en flexibel uitwisselbaar te maken.

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

Wat is de rol van de Context in het Strategy Pattern?

A

De Context gebruikt een IStrategy-object om gedrag uit te voeren zonder de implementatie te kennen.

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

Wat is het Repository Pattern?

A

Een structureel patroon dat een abstractielaag introduceert tussen de domeinlaag en de datalaag.

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

Wat is het doel van een repository?

A

De toegang tot gegevens structureren en loskoppelen van de applicatielogica.

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

Wat zijn de componenten van de structuur van het Repository Pattern?

A
  • IRepository (interface)
  • ConcreteRepository
  • Domeinlaag (Client)
  • Gegevensbron
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Wat doet de IUserRepository interface?

A

Definieert methodes voor gegevensbeheer zoals GetById, Add en Remove.

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

Vul in: Het ________ is een creationeel ontwerpprincipe dat een interface biedt voor de creatie van objecten.

A

Factory Method Pattern

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

Wat is een concrete implementatie in het Abstract Factory Pattern?

A
  • ConcreteFactory1
  • ConcreteFactory2
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Wat is een voordeel van het gebruik van factories in unit tests?

A

Betere testbaarheid door het eenvoudiger maken van mocks of fakes.

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

Wat is een ConcreteCreator in het Factory Method Pattern?

A

Een subklasse die bepaalt welk product gecreëerd wordt.

17
Q

Wat is het doel van de Abstract Factory?

A

Families van gerelateerde objecten maken zonder hun specifieke klassen te kennen.

18
Q

Wat retourneert de repository in plaats van raw data?

A

Objecten

Dit maakt het werken met data gemakkelijker en meer gestructureerd.

19
Q

Waarom kan de repository eenvoudig gemockt worden tijdens tests?

A

Omdat deze verwisselbaar is zonder impact op de businesslaag.

20
Q

Hoe is de logica losgekoppeld van de specifieke implementatie van gegevensopslag?

A

Door het gebruik van interfaces.

21
Q

Wat is het verschil tussen een principle en een pattern?

A
  • Principle: Abstracte richtlijn voor goed objectgeoriënteerd ontwerp.
  • Pattern: Concreet herbruikbare oplossing voor een terugkerend ontwerpprobleem.
22
Q

Wat schendt het Simple Factory pattern vaak?

A

Single Responsibility Principle

23
Q

Hoe verplaatst het Factory Method pattern objectcreatie?

A

Naar subklassen.

24
Q

Wat is een kenmerk van het Abstract Factory pattern?

A

Elke Factory klasse heeft één taak: een familie object creëren.

25
Wat is het voordeel van het Strategy Pattern?
Verschillende algoritmes of gedragingen worden geïsoleerd in aparte strategieklassen.
26
Wat is de verantwoordelijkheid van een repository klasse?
Alleen verantwoordelijk voor datatoegang.
27
Vul de lege ruimte in: Het Repository pattern streeft naar _______ designs.
loosely coupled
28
Wat communiceert de businesslaag mee in het Repository pattern?
Enkel met de repository interface.