작가 : 조영호
분야 : IT
읽은기간 : ???? ~ 2024.11.22(중단)
기존에 객체지향의 사실과 오해라는 책을 읽어보고 내가 생각했던 방식외에도 객체지향 설계에 있어서 다르게 생각하는 부분이 있다는 것을 알게 되었다.
https://b1ackhand.tistory.com/270
객체지향의 사실과 오해
작가 : 조영호 분야 : IT / 언어 읽은 기간 : 24.02.10 예전 부터 들어봤던 책인데, 전에 쓴 Git관련 강의에서 잠깐 언급된 이 강의는 이 책의 제목을 패러디 한것이라고 소개해주면서 이 책도 읽어보
b1ackhand.tistory.com
해당 책의 작가가 쓴 객체지향에 대한 깊이 있는 객체지향에대한 관점을 이 책을 통해서 알게 되었다. 일단 미리 말하자면 이 책을 전부다 읽지 못하였고 절반 정도 읽고 뒷부분을 훑어 봤을 때, 지금 당장 이 책이 나한테 줄 수 있는 교훈이 적다고 생각하여 덮게 되었다. 적어도 개발자로써 현업에서 2,3년이상은 상용화된 여러 코드들을 보고 나서야 처음 설계를 할때 어떤 점들을 고려해보면 좋겠다 라는 부분이 많은 것 같다.
우선 책의 시작은 간단한 프로그램을 만들어 본다. 영화관에서 티켓부스에 해당하는 프로그램을 만드는 것이다. 티켓은 유저의 등급에 따라 2개의 다른 할인 조건이 붙으며 이를 객체지향 설계에 맞게 구현하면 된다. 그리고 구현된 내용을 보고 나라도 이렇게 구현했을 것이라고 생각했지만 첫 장을 제외한 나머지 모든 부분은 각 부분을 어떻게 고쳐야 되는지에 대한 내용이다.
자세한 내용은 책을 보면 더 잘 알 수있지만 내 생각에 작가가 강조하는 것은 이것이다.
코드는 변화에 유연하게 대응할 수 있어야 한다.
즉, 기획의 수정 등이 발생 했을 때, 유지 보수의 관점에서 코드 변화를 최소화해서 적용할 수 있는 구조가 이루어져야 되는 것이다. 책에서는 우리가 잘 아는 SOLID를 코드들을 직접 보고 수정하며 어떻게 적용할 수 있는지 알아보고 처음 설계할 때, 도메인 중심, 데이터 중심, 책임 주도 설계로 다양한 방식으로 같은 내용을 구현해 본다. 사실 난, 이 시점에서 책을 덮고 싶었다. 공감 되지 않는 영역이었기 때문이다. 그 이후로는 각 객체간의 의존성 낮은 결합도 높은 응집성 등의 코드들을 보며 설명한다.
이 책을 보고나서 역시 구현 보다는 설계가 중요하다라는 생각을 다시 또 하게 되었고 다음 프로젝트에는 설계에 시간을 많이 써야겠다.
'서적' 카테고리의 다른 글
살아 있는 자들을 위한 죽음 수업 (0) | 2025.01.02 |
---|---|
당신이 누군가를 죽였다 (0) | 2024.12.26 |
살인 현장은 구름위 (0) | 2024.11.18 |
와인/맥주/위스키 은/는 어렵지 않아 시리즈 (0) | 2024.11.06 |
이태리 할머니 파스타 (0) | 2024.11.06 |