선수 개념
- OOP
1-1. 상속과 합성
1-2. SOLID- DDD
- 클린 아키텍처
3-1. 요청 진행 방향
구분 | 상속 | 합성 |
---|---|---|
Eng | Inheritance | Composition |
관계 | Is-a 관계 (상하위 카테고리 관계) | Has-a 관계 (소유/종속 관계) |
결합도 | 높음 | 낮음 |
결합 방식 | 클래스를 통한 결합 | 메시지를 통한 결합 |
관계 결정 시점 | 컴파일 타임 | 런타임 |
재사용 | 화이트박스 재사용 (부모 클래스 내부를 자식 클래스에 공개) | 블랙박스 재사용 (구현 재사용 x, 객체의 인터페이스 재사용) |
상속을 잘못 사용한 사례
Java의 Vector