728x90
2023.08.10 THU
117p ~ 130p
9일차 내용 ⬇️
2023.08.09 - [개발 서적 기록/오브젝트_조영호] - 9일차 - 캡슐화, 응집도 그리고 결합도
9일차 - 캡슐화, 응집도 그리고 결합도
2023.08.09 WED 107p ~ 118p 8일차 내용 ⬇️ 2023.08.09 - [개발 서적 기록/오브젝트_조영호] - 8일차 - 추상화를 통한 역할 부여 그리고 책임 중심 설계 8일차 - 추상화를 통한 역할 부여 그리고 책임 중심 설
magenta-ming.tistory.com
새로운 데이터 타입을 정의할 때는 데이터와 오퍼레이션을 고려하자
상태와 행동을 객체라는 하나의 단위로 묶는 이유는 객체 스스로 자신의 상태를 처리할 수 있게하기 위해서다.
객체 내부에 저장되는 데이터보다, 객체가 협력에 참여하면서 수행할 책임을 정의하는 오퍼레이션이 더 중요하다.
그래서 새로운 데이터 타입을 정의할 때에는 두 개의 단계를 고려해야한다.
1. 이 객체가 어떤 데이터를 포함해야하는가? 어떤 데이터를 관리해야하는가?
2. 이 객체가 데이터에 대해 수행해야하는 오퍼레이션은 무엇인가? 이 데이터를 처리하기 위해 어떤 오퍼레이션이 필요한가?
단순히 객체 내부의 데이터만 감춰서를 캡슐화할 수 없다.
내부 속성을 외부로부터 감추는 것은 캡슐화의 일부일 뿐이다. 데이터 캡슐화를 수행한 것이다.
진정한 캡슐화는 데이터 뿐만 아니라, 구현과 관련된 변경할 수 있는 어떤 것 감추는 것이다.
728x90
'개발 서적 기록 > 오브젝트_조영호' 카테고리의 다른 글
12일차 - 변경될 가능성이 있는 클래스를 찾아라 (0) | 2023.08.13 |
---|---|
11일차 - 책임 주도 설계로 전환하기 (0) | 2023.08.11 |
9일차 - 캡슐화, 응집도 그리고 결합도 (0) | 2023.08.09 |
8일차 - 추상화를 통한 역할 부여 그리고 책임 중심 설계 (0) | 2023.08.09 |
7일차 - 적절한 책임과 적합한 역할 (0) | 2023.08.08 |