이 책을 통해 이후 객체지향 프로그래밍에 관련된 여러 갈래로 파생된 기법들, 방법론, 디자인 패턴 등을 접할때 바라볼 수 있는 관점을 하나 얻은 기분이다.
'적절한 책임을 위한 적절한 객체들의 설계.'
읽고나서
처음 커피를 시키는 카페에서의 과정을 예시로 시작하여, 객체들의 협력으로 이루어져있는 설계, 협력을 위한 메시지 역할, 구현과 인터페이스의 구분 등을 거쳐 작은 시스템을 구성하는 흐름을 보여주기까지 7장에 걸쳐 나누어 설명하고 있다.
전체에 걸쳐 자주 반복되어 책을 덮은 지금에도 생각나는 구절은 아래와 같다.
- 객체의 상태보다 행동이 중요하다. 상태는 과거의 행동의 결과를 유추할 수 있게 해줄 뿐이다.
- 객체에 책임을 정하는 것이 아닌, 책임을 행할 적절한 객체를 고르는 것이다.
- 도메인 모델을 통해 설계를 하는 것이 추후 변경에 반응하기 쉬운 객체지향 설계를 위한 것 중 하나이다.
- 불안정한 기능들을 안정된 구조에 담음으로써 현실에 대응한다.
일부는 기존에 내가 자바라는 언어를 통해 개발하면서 행해왔던 것들이 연상되게 하는 내용들이 몇 있었다.
물론 일부는 아직은 크게 와닿지 않는 내용들도 많았다. 하지만 이런 부분들이 향후에 생각나서 '그때 그 말이 이런 거였구나.'할만한 순간들이 올 것 같고 기대가 된다.
'CS (Computer Science) > 독후감 : 객체지향의 사실과 오해' 카테고리의 다른 글
5일차(6장) - 기능을 담을 구조라는 재료 (2) | 2023.11.20 |
---|---|
4일차(5장) - 책임의 자율성이 객체지향 프로그래밍에 미치는 영향 (1) | 2023.11.18 |
3일차(4장) - 협력을 위한 책임. 책임에 맞는 객체. 객체가 참여할 수 있는 역할. (0) | 2023.11.17 |
2일차 (3장) - 클래스와 객체의 관계. 클래스는 타입을 구현하는 방법 중 하나 (0) | 2023.11.15 |
1일차 (1장, 2장) : 객체는 무엇인가. 현실과 닮은 듯 안 닮은 듯 (0) | 2023.11.14 |