[오브젝트] 3장 역할, 책임, 협력
역할, 책임, 협력 객체지향 패러다임의 관점에서의 핵심은 역할(role), 책임(responsibility), 협력(collaboration)이다. 애플리케이션의 기능을 구현하기 위해 어떤 협력이 필요하고 협력을 위해 어떤 역할과 책임이 필요한지 고민하지 않은 채 너무 이른 시기에 구현에만 초점을 맞추는 것은 변경하기 어렵고 유연하지 못한 코드를 낳는 원인이 된다. 협력: 객체들이 애플리케이션의 기능을 구현하기 위해 수행하는 상호작용 역할: 객체들이 협력안에서 수행하는 책임들을 일컫는 말 (= 인터페이스라 의역하면 이해가 쉽다) 책임: 객체가 협력에 참여하기 위해 수행하는 로직 (= 인터페이스 구현체 또는 객체) 협력 협력은 객체지향 세계에서 기능을 구현할 수 있는 유일한 방법이다. 하나의 객체가 모든 ..