Lecture 4 - Architecture Abstraction Flashcards
(7 cards)
1
Q
What is Abstraction
A
- simplify complex problems by representing essential features and hiding unnecessary details
2
Q
What is decomposition?
A
- breaking down large entities into smaller ones
- goal: modular, maintainable, flexible designs
3
Q
Poor decomposition example
A
- One class is responsible for almost all the operations
- Multiple responsibilities per class
4
Q
What is coupling?
A
- Density of dependencies among classes
- If a class changes and there is high coupling, other classes needs to change as well
5
Q
Tight vs Loose Coupling?
A
Tight:
- Classes create other classes directly
- Maintains direct reference
Loose:
- Classes referred through parameters
6
Q
What is cohesion?
A
- Degree of unity or closeless among elements WITHIN a class
- Goal: Each class should represent a single concept
7
Q
Low cohesion vs high cohesion
A
Low
- classes mixing responsibilities with other classes
High
- Class information restricted to the class