본문 바로가기
행위 돌아보기/독후감상문

[책] 도메인 주도 설계 철저 입문 - 나루세 마사노부 리뷰

by simplify-len 2020. 10. 29.

아마도 올해 초부터였을까? Slipp 커뮤니티에서 사이드 프로젝트를 하기 위해 지인에서 Join을 부탁했을 때부터 도메인 주도 설계는 끊임없이 나의 꼬리표를 달게 되었습니다.

사이드프로젝트내에서 먼저 도메인 주도 설계론을 창시한 에릭 에반스의 책을 처음 접하게 되었습니다. 이 책을 읽으면서 느꼈던 점은 도메인 주도 설계라는 것은 서비스내에서 정말로 중요한데, 코드로서 이를 표현하는 방법은 무엇이 있을까- 어떻게 해야될까? 라는 고민이 있었습니다.

에릭 에반스 - 도메인 주도 설계

이 책을 어느 정도 읽었을 쯤, 그 다음 책으로 반 버논의 '도메인 주도 설계 구현' 를 읽기 시작했습니다. 제가 필요로 했던 드디어 코드로서 도메인 주도 설계를 설명해주면서 개념 하나하나를 이해해 나갔습니다. 

그러나, 읽으면서도 정말 포기하고싶다는 생각을 10번이상은 한 듯합니다. 좋은 내용임은 맞으나, 장황하고 계속 읽으면서도 어떤 요소에 대한 설명이고 무엇을 말하고자 하는 것을 잊어버리게 만들 정도의, 장황함을 읽는 이에게 포기하게끔 만드는 경향이 있었습니다.

그러던 중, 최근에 번역되서 출판된 도메인 주도 설계 철저 입문-나루세 마사노부 를 만나게 되었습니다. 지금까지 읽었던 에릭에반스와 반버논의 책과는 완전히 다를정도로 책 제목과 같이 철저 입문 이였습니다.

책이 서술되는 과정이 누구나 쉽게 받아들 수 있도록 해주는 장점이 있었습니다. 예를 들면, 도메인 모델링이란 무엇인가?  라고 한다면 책에서 가장 서두에 도메인 모델링의 결론을 내리고, 이 결론을 뒷받침하는 내용을 쉽게 설명해줍니다. 

happy-coding-day.tistory.com/107

위 블로그에 비슷한 구조로 내용을 적어내려갔습니다.

또한, 반버논이나 에릭에반스에 비해 책이 굉장히 친절하다 라는 느낌을 받았습니다. 모두가 공감할만한 소재로 자신이 설명하고자 하는 부분을 설득시키는 부분이 인상깊었습니다.

DDD는 사실 용어의 이해가 굉장한 러닝커브를 일으킨다고 개인적으로 생각합니다. 각 용어가 어떤 의미를 가졌고, 어떻게 바라봐야하는지에 대해서 말이죠. 그런 관점에서 이 책은 각 DDD의 용어를 보다 쉽게 누구나 이해할 수 있게 설명해주고 있습니다.

분명 위 2책에 비해서는 비교적 쉽고 이해가 쉽습니다. 

그러나, 너무 쉬운 주제로 설명하기 때문에- 이를 코드로서, 실무에서, 활용하는데에는 분명 한계가 있을 것입니다. 이 책은 위 2권을 읽기 위한 초석을 다진다는 느낌으로 가져가야하고 꼭 2권을 다 읽었을 때, 비로서 DDD에 개안할 수있지 않을까 싶습니다.

지금 저는 한번 완독하고, 다시 천천히 완독하면서 제가 놓쳤던 부분에 대해서 다시 정리하면서 학습하고 있습니다.

한 가지 용어에 대해서 3개의 책을 비교해가며 읽고 있는데, 책의 저자에 따라 사용하는 용어도 조금씩 틀리고 설명하고자 하는 범주가 많이 다릅니다. 

이 책에서는 저자의 생각이 담겨져있는 페이지도 꽤 많이 있었습니다. 예를 들면, UnitOfWork 패턴, ServiceLocator 패턴 등 다른 책에서는 쉽게 찾을 수 없는 부분이 있었습니다.

반대로, 좀 더 심화적인 내용- 이벤트 소싱이나 Notification과 같은 좀 더 고수준의 내용은 담겨져 있지 않습니다.

한가지 확실한 건 이 책은 DDD에 접근하기 위한 입문책으로 적극적으로 추천하고 싶다 입니다.

댓글