DDD START! - 도메인 주도 설계 구현과 핵심 개념 익히기

2017. 3. 26. 16:40

반응형


DDD START! - 최범균


들어가면서

개발을 시작한지 몇 년 되지 않은 본인은 DDD를 최근에야 알았다. 그래서 비교적 최근에 나온 설계 기법이라 생각 했지만 꽤 오래전 부터 주목받은 설계 방법론으로 책의 저자는 2006년에 알게 되었다고 하며 시초는 에릭 에반스의 2003년 저서인 것 같다.


이렇게 오래된 개발 방법론이 개발자 저변에 알려지지 않은 이유가 무엇일지 궁금했다. 본인의 짧은 경력이 이유일 수 있지만 그럴듯한 이유를 2008년 지디넷의 DDD에 대한 글에서 공감할 만한 내용을 찾을 수 있었다.

이는 DDD에 대한 정확한 이해와 접근방법에 대한 학습이 부족한 원인도 있을 것이다. 하지만 더 큰 이유는 DDD가 단지 개발 기술이 아니기 때문이다. DDD 사실상 소프트웨어 설계에 관한 철학이다. 그 설계와 구현이 일치를 이뤄야 하기 때문에 스프링과 같은 툴들이 이를 지원하고 있을 뿐이다.

책을 읽으며 스프링과 관련된 철학과 기술들이 DDD와 잘 접목되는 것을 느꼈던 이유가 이것이다. 스프링이 DDD에 기반하여 설계된 것은 아니지만 DDD와 스프링은 추구하는 철학이 비슷하기 때문이다.



서평


책은 입문자를 위한 내용을 담고 있다. 에릭 에반스의 저서보다 알기 쉬운 예제로 DDD를 설명하기 때문에 이해가 한결 쉽다. 개발을 이제 막 공부하는 사람들 보다는 경력이 조금 있는 분들이 보기 좋을 것이라 생각한다. 개인적으로도 개발에 대한 깊이있는 온갖 궁금증이 생겨날 경력 1,2년 이상의 개발자들이 내용 흡수력 역시 가장 좋을 듯 싶다. 예제는 메이븐, 자바 8, 스프링 프레임워크, JPA(하이버네이트), MySQL을 사용하여 DDD를 설명한다. 본인과 같이 스프링 기반의 프로젝트 경험이 있다면 책을 읽으며 DDD뿐 아니라 스프링과 스프링과 관련된 기술들을 더 깊은 수준에서 다시 이해할 수 있을 것이라 생각한다.


1,2장은 정독 했고 나머지는 스르륵 훑어보았다. 1,2장에서 DDD에 대한 개념들을 잡을 수 있었는데 생각보다 이해가 잘 되서 술술 읽혔다. 그 만큼 DDD를 입문하기에 가장 좋은 책이라 생각된다. 개발을 하면서 고객과 많은 간극을 느끼거나 협업이나 유지 보수를 하면서 좋은 설계에 고민 했던 개발자에게 좋은 안내서가 되지 않을까 싶다. 그리고 설계에 대한 깊은 이해의 필요성에 대해서 충분히 공감할 수 있을 책이기도 하다.


DDD에 대해서 더 알고 싶다면 지디넷 코리아에 게재된 DDD 내용을 참고하면 좋을 것 같다. 2008년에 작성된 글이지만 지금 읽어도 좋은 내용이라 생각된다.

[DDD ①] 도메인 주도 개발

[DDD ②] UI 프로토타이핑

[DDD ③] 스프링 프레임워크와 DDD

[DDD ④] Sculptor

[DDD ⑤] BDD(Behavior Driven Development)




반응형

'' 카테고리의 다른 글

에고라는 적  (1) 2017.04.14
3D 프린터 도서 리뷰 - 3D 프린터 101  (0) 2017.04.02
음식의 역습  (0) 2017.02.28
파이썬 머신러닝  (0) 2017.02.19
인에비터블  (0) 2017.02.08