'오브젝트: 코드로 이해하는 객체지향 설계' 2주차
분량 : Ch.6 ~ Ch.10
기간 : 22.5.15 ~ 22.5.21
이번 챕터는 상속의 문제점을 코드 위주로 설명해 글로 적기에는 많은 어려움이 있어 간략하게만 적었다.
앤드류 헌트, 데이비드 토마스의 Don't Repeat Yourself를 따 DRY원칙이라고 한다.
중복 코드가 늘어날수록 애플리케이션은 변경에 취약해지고 버그가 발생할 가능성이 높아진다.
중복 코드의 양이 많아질수록 버그의 수는 증가하며 그에 비례해 코드를 변경하는 속도는 점점 더 느려진다.
중복 코드를 제거할 수 있는 방법에는 무엇이 있을까?
대표적인 방법은 상속이다.
그러나! 객체지향에 대한 이해가 깊어지면서 사람들은 코드를 재사용하기 위해 맹목적으로 상속을 사용하는 것이 위험하다는 사실을 깨닫기 시작했다.
상속은 자식 클래스를 점진적으로 추가해서 기능을 확장하는 데는 용이하지만 높은 결합도로 인해 부모 클래스를 점진적으로 개선하는 것은 어렵게 만든다.
상속의 단점을 피하면서도 코드를 재사용할 수 있는 더 좋은 방법 : 합성