전체 글 (84) 썸네일형 리스트형 객체지향의 사실과 오해 - Chapter 5 책임과 메시지 훌륭하고 성장 가능한 시스템을 만들기 위한 핵심은 모듈이 어떻게 커뮤니케이션하는가 명확한 책임과 역할을 지닌 참가자들이 협력에 참여해야 한다는 것 → 부여받지 않은 책임을 기대하기 어려움 자율적인 책임 자율성→ 자기 스스로의 원칙에 따라 어떤 일을 하거나 자신을 통제해서 절제하는 성질이나 특성 타율성→ 자신의 의지와 관계없이 정해진 규율이나 원칙에 따라서만 움직이는 성질 객체가 어떤 행동을 하는 유일한 이유는 다른 객체로부터 요청을 수신했기 때문 요청을 처리하기 위해 객체가 수행하는 행동을 책임이라고 함 객체지향의 아름다움이란 적절한 객체에게 적절한 책임을 할당하는 것 책임-주도 설계: 적절한 책임의 선택이 전체 설계의 방향을 결정하기 때문 협력의 의도를 명확하게 표현하지 못할 정도로 추상적인 것 역시 .. 객체지향의 사실과 오해 - Chapter 4 역할, 책임, 협력 인간은 이기적이고 합리적인 존재 → 그러나 관계를 맺는 과정 속에서 인간은 본연의 특성을 배제하고 자신의 이익을 최소화 → 어떤 상황에 처해 있느냐가 인간의 행동을 결정한다. → 인간의 행동을 결정하는 문맥은 타인과의 협력 협력에 초점을 맞춰 애플리케이션을 설계함 → 협력에 무시하는 오만한 객체를 창조X → 조화를 이루며 적극적으로 상호작용하는 협력적인 객체를 창조 협력 협력은 한 사람이 다른 사람에게 도움을 요청할 때 시작된다. 재판 속의 협력 → 재판을 하기 위해, 왕, 토끼, 증인이 협력함 요청과 응답→ 협력에 참여하는 객체가 수행할 책임 책임 어떤 요청에 대해 대답해줄 수 있거나, 적절한 행동을 할 의무가 있는 경우, 해당 객체가 책임을 가진다고 함 객체지향 개발에서 가장 중요한 능력은 책임을 능.. 객체지향의 사실과 오해 - Chapter 3 타입과 추상화 추상화를 통해 타입을 만듬 추상화의 예: 지하철 노선도 ( 목적에 집중하여 필요없는 부분들 삭제) 현상은 복잡하고, 법칙은 단순함 명확하게 이해하기 위해 특정절차나 물체를 의도적으로 생략하거나 감춤으로써 복잡도를 극복하는 방법 → 구체적인 사물들 간의 공통점은 취하고, 차이점은 버리는 일반화를 통해 단순화 → 불필요한 세부사항 제거 → 객체라는 추상화를 통해 현실의 복잡성을 극복 그룹으로 단순화하기 → 공통점으로 묶기 : 사람은 본능적으로 공통적인 특성으로 객체들을 여러 그룹으로 묶어 동시에 다뤄야하는 가짓수를 줄여버림 세상에 존재하는 등장인물들을 트럼와 토끼로 나누어서 복잡성을 감소시킴세상에 존재하는 등장인물들을 트럼와 토끼로 나누어서 복잡성을 감소시킴 분류(Classification)을 통해 clas.. 이전 1 ··· 23 24 25 26 27 28 다음