오브젝트 4장
in Computer Science on OOP
오브젝트 4장
제 4장
설계 품질과 트레이드 오프
- 객체지향 설계의 핵심은 역할,책임,협력
- 객체지향 설계란 올바른 객체에게 올바른 책임을 할당하여 낮은 결합도와 높은 응집도를 가진 구조를 창조하는 것
- 좋은 설계는 응집도가 높고 서로 느슨하게 결합된 구조를 말한다.
- 캡슐화
- 변경될 가능성이 높은 부분을 구현, 상대적으로 안정적인 부분을 인터페이스라 부른다.
- 객체지향에서 가장 중요한 원리는 캡슐화
- 캡슐화가 중요한 이유는 불안정한 부분과 안정적인 부분을 분리해서 변경의 영향을 통제할 수 있기 때문
- 캡슐화는 변경 가능성이 높은 부분을 객체 내부로 숨기는 추상화 기법이다.
- 객체지향의 설계의 핵심은 변경될 수 있는 어떤 것이라도 캡슐화 해야한다는 것이다.
- 낮은 결합도를 위해 클래스 구현이 아닌 인터페이스에 의존하도록 코드를 작성해야 한다.
- 유명한 격언 인터페이스에 대해 프로그래밍하라[GOF]
- 객체는 스스로 자신의 상태를 바꾸는 책임을 가져야 하다.
- 데이터 중심의 설계 보다는 책임 중심의 설계를 해야한다.
Reference
오브젝트 - 조영호