Övriga principer Flashcards

1
Q

The Command-Query Separation Principle

A

en metod ska antingen ha sidoeffekter (en mutator) eller returnera ett värde (en accessor), inte båda

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

Law of Demeter

A

ett objekt ska bara kommunicera med sina närmaste grannar, det ska inte ha kännedom om det interna detaljerna i andra objekt

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

Composition Over Inheritance

A

använda sammansättning hellre än arv, detta för att öka flexibilitet genom att minska beroende (low coupling), lättare att underhålla och utöka

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

High Cohesion, Low Coupling

A

High Coupling: alla metoder i samma klass/modul ska jobba mot samma mål och hantera relaterade element

Low Coupling: olika klasser/moduler bör vara svagt beroende av varandra, påverkan i en klass ska ha minimal påverkan på en annan

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

Separation of Concern

A

dela upp ett program i komponenter eller moduler där varje har ett specifikt ansvar eller uppgift

systematiskt användande av abstraktion

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

Defensive Programming

A

designfilosofi för att förebygga felaktig användning av kod

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