http://www.yes24.com/Product/Goods/18249021
김영한 님의 JPA 강의를 보던 중 이 책을 알게 되어 보게 된 책이다. 생각보다 책이 얇아서 가벼운 마음으로 읽기를 시작했으나, 그 내용은 가볍지 않아 읽는 데 거의 두 달가량 걸린 책이다. 책에서 설명하는 개념이 추상적인 것이 많아서 이해하는데 어려웠다.(사실 몇 페이지 읽다가 책을 덮고, 몇 페이지 다시 읽다가 책을 덮고를 무한 반복하여 오래 걸렸다)
이 책을 읽으면서 인상 깊었던 내용을 내 나름대로 몇 가지 정리하면 다음과 같다.
첫째, 클래스는 객체를 구현하는 방법의 하나이지 클래스 자체가 객체는 아니다. "객체지향 = 클래스"라는 생각을 버릴 것.
둘째, 객체는 행위와 다른 객체와의 협력을 중심으로 먼저 설계한 후, 필요한 상태만 캡슐화하여 설계할 것.
셋째, 다형성 그리고 인터페이스 설계의 중요성. 변화에 유연한 인터페이스를 설계하는 것이 좋은 설계이다. 세부 구현보다는 인터페이스 설계를 우선할 것.
넷째, TDD의 목적은 결국 객체 간의 협력을 먼저 설계한 후에 해당 협력 혹은 행위를 구현하는 것.
위 내용들 그리고 책의 모든 내용이 아직은 명확하게 혹은 구체적으로 피부로 와닿지는 않지만, 객체지향이 추구하고자 하는 가치를 조금은 이해한 것 같아 좋았다. 이 책은 내가 한 1~2년 후에 좀 더 많은 경험과 지식을 얻고 난 후 다시 읽으면 지금 이해한 내용보다 더 많은 내용을 이해할 수 있을 것 같다.
'북리뷰 > IT서적' 카테고리의 다른 글
[2022-09] Head First SQL을 읽고 (0) | 2022.12.24 |
---|