- 객체지향 관련한 새로운 기술과 도구를 익히자!
- 상속과 합성에 대해 완벽하게 이해하고 둘 중에 필요한 것을 선택하여 사용해라
합성 vs 상속, 그리고 의존성 주입
1. 상속
- Mammal을 변경하면 모든 하위 클래스를 다시 컴파일 해야함 (캡슐화를 깸)
- 날다 or 걷다는 어디에 속해야 하는가??
- is-a가 아닌 has-a로 접근해야 한다. → 합성을 사용해보자
- 다형성이 꼭 필요한 상황에서만 상속을 사용해라
2. 합성
- 응집성이 너무 높다.
- 객체가 강하게 묶여있다.
3. 의존성 주입
- 클래스의 구성을 클래스 의존체들의 구성으로부터 분리함
- 결론적으로 의존성 주입을 사용해라