[오브젝트] 3장. 역할, 책임, 협력
·
프로그래밍/객체지향 설계
객체지향 패러다임의 관점에서 핵심은 협력, 책임, 역할이다. 역할, 책입, 협력이 제자리를 찾지 못한 상태라면 응집도 높은 클래스와 중복 없는 상속 계층을 구현한다고 하더라도 우리가 만든 애플리케이션이 침몰하는 것을 구원하지 못할 것이다. 그 이유를 살펴보자. 1. 협력 영화 예매 시스템 돌아보기 객체지향 원칙을 따르는 애플리케이션의 제어 흐름은 어떤 하나의 객체에 의해 통제되지 않고 다양한 객체들 사이에 균형 있게 분배되는 것이 일반적이다. 여기서 중요한 것은 다양한 객체들이 영화 예매라는 기능을 구현하기 위해 메시지를 주고받으면서 상호작용한다는 점이다. 이처럼 객체들이 애플리케이션의 기능을 구현하기 위해 수행하는 상호작용을 협력이라고한다. 객체가 협력에 참여하기 위해 수행하는 로직은 책임이라고 한다...