14장 일관성 있는 협력
오브젝트의 14장을 요약한 내용 입니다.
객체지향 설계의 목표는
적절한 책임
을 수행하는 객체들의 협력을 기반으로 결합도
가 낮고 재사용
가능한 코드 구조를 창조하는 것이다. 유사한 요구사항을 계속 추가해야 하는 상황에서 각 협력이 서로 다른 패턴을 다를 경우에는 전체적인 설계의 일관성
이 서서히 무너지게 된다.하지만
재사용
은 공짜로 얻어지지 않는다. 재사용을 위해서는 객체 들의 협력
방식을 일관성 있게 만들어야 한다. 특정한 문제를 유사한 방법
으로 해결하고 있다는 사실을 알면 문제를 이해하는 것만으로도 코드의 구조를 예상할 수 있게 된다.대부분의 사람들은
유사한 요구사항
을 구현하는 코드는 유사한 방식
으로 구현될 것이라고 예상한다. 하지만 유사한 요구사항이 서로 다른 방식으로 구현돼 있다면 요구사항이 유사하다는 사실 자체도 의심하게 될 것이다.