chkim***
2022-04-24

실제 업무에 도메인 주도 설계(DDD)를 적용할 수 있도록 기본적인 DDD의 핵심 개념을 익히고 구현을 통해 학습할 수 있도록 구성한 DDD 입문서
최근 DDD와 관련해 관심이 생기던 찰나였다. 지금 다니고 있는 회사의 프론트엔드 아키텍처가 DDD 방식을 참고한 방향인지라 아키텍처에 대한 이론이나 백그라운드 지식을 얻을 필요가 있었기 때문이다.
근데, DDD와 관련해 내가 딱 읽어보고 싶었던 책이 서평단을 통해 읽을 수 있는 기회가 찾아와 기분 좋게 읽을 수 있었다. :)
---
말머리를 쭈욱 훑어보면 도메인 주도 개발(DDD)의 입문자를 위한 초중급자용 개발자 서적이라고 써있는 걸 확인할 수 있다. 나는 이 말이 이 책의 주제와 구성들을 한 문장으로 설명하는 문장이라고 생각한다. DDD에 대한 핵심 개념 예를들어 엔티티와 벨류 타입에 대한 기초 개념, 애그리거트에 대한 기초 개념 등 여러가지를 심도있고 깊숙하게 다룬다 하기보다는 다방면에 걸쳐 찍먹(?)한다.
물론 찍먹이라기엔 부정적인 느낌이 들 수는 있으나 핵심 개념들은 상세히 설명되어있고 오히려 실무에서 어떤 느낌으로 DDD를 사용할 수 있는지 예제 코드와 함께 기능적인 부분에 대한 고민도 함께 수록되어 있다 보니 초중급자 개발자에게는 다른 책보다 더 많은 걸 얻어갈 수 있으리라.
책의 소스 코드는 서버 개발자를 대상으로 자바 스프링 그리고 JPA(orm)로 코드가 작성되어있다. 나는 프론트엔드 개발자라 자바 문법도 모르고 핵심 개념도 모르기 때문에 한 눈에 들어오지는 않았으나 평소 이런 종류의 개발 서적들이 자바로 된 경우가 왕왕 있고, 자바스크립트 코드에 빗대어 나름대로 해석해 가며 읽었기 때문에 완전 까막눈으로 보진 않았다.
하여 프론트엔드 개발자(= 자바스크립트 개발자)가 DDD에 관심이 생겼다면, 게다가 자바 스프링을 모른다하더라도 공통적인 매커니즘은 비슷하므로 이해가 완전히 안되지는 않을 것이다. 만약 스프링을 할 줄 아는 사람이라면 정말 좋은 책이라 자부할 수 있다. 왜냐하면 스프링을 사용해 보지도 않았으나 좋은 책이다라고 느껴졌기 때문이다.
좋은 책이란, 내가 미처 몰랐던 개념을 알려주고 가려웠던 부분들을 긁어주어 새로운 패러다임을 생각할 수 있게 기반을 닦아주는 책이라고 본다. 그런 의미에서 이 책은 DDD에 대해 몰랐던 개념을 알려주고 새로운 아키텍처에 대한 시각을 넓혀준 것 같다.
이 책말고 DDD라고 하면 유명한 외국 서적이 한 권 있다. 그 책을 읽어보지는 않았으나 이런 개발론 or 아키텍처에 대한 책을 한 권만 읽을 생각은 아닐 것이기 때문에... 그 책을 먼저 읽어 기초 개념을 쌓아보는 것도 좋아 보인다. + 국산 프리미엄도 있다.
내 친구 중에 스프링으로 개발 중인 녀석이 있는데, 추천해서 읽어보라 권할 책이다.
---
**"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."**