내블로그 | 랜덤블로그 쪽지
hsy2569님의 블로그
http://blog.yes24.com/hsy2569
리스트 | RSS
태그 & 테마링 | 방명록
hsy2569
hsy2569님의 블로그
프로필 쪽지 친구추가
9월 스타지수 : 별328
댓글알리미 비글 : 사용안함
전체보기
기본 카테고리
나의 리뷰
기본 카테고리
나의 메모
기본 카테고리
태그
내용이 없습니다.
2022 / 09
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30
월별보기
나의 친구
최근 댓글
내용이 없습니다.
새로운 글
오늘 2 | 전체 85
2019-03-13 개설

전체보기
Spring + JPA 주니어 개발자가 읽으면 많이 도움될 것 같아요! | 기본 카테고리 2022-04-24 22:11
http://blog.yes24.com/document/16216123복사Facebook 보내기 트위터 보내기

[도서]도메인 주도 개발 시작하기

최범균 저
한빛미디어 | 2022년 03월

내용     편집/구성     구매하기

Spring + JPA 주니어 개발자가 읽으면 많이 도움될 것 같아요!

위 상품을 구매하면, 리뷰등록자에게 상품판매대금의 3%가 적립됩니다. (상품당 최대 적립금액 1,000원) 애드온 2 안내

서론

입사 1년차 때, 새로운 웹 서비스 개발을 했었다.

첫 프로젝트였고 DDD(Domain Driven Design)로 구현을 했었다.

신입이었기에 DDD가 뭔지 잘 모른채 개발을 했었고, 기억에 남은 것은 자바 애플리케이션 패키지 구조 (controller, service, repository) 와 Domain 단위로 나눴었다는 점?

그래서 DDD를 단순하게 생각했을지도 모른다.

여태 DDD로 프로젝트를 한 경험이 있다했지만, DDD 그 자체를 이해하지 못했었고, 진짜로 DDD를 적용을 해 구현을 했는가? 이것 또한 잘 모르겠다.

그래서 이 책을 통해 DDD를 조금이라도 알고 쓰자 싶었다.

PS. DDD는 여러 IT 회사 모집 공고의 자격 요건에도 간혹 등장한다.

- DDD 기반 프로젝트 경험

이 책을 잘 읽으려면

- Java와 Spring MVC, JPA 기반의 예제로 이루어져 있어, 해당 코드를 읽을 수 있어야 할 것 같다.

본문

아래 이미지는 "온라인 서점" 이라는 도메인의 하위 도메인들이다

도메인은 개발자 입장에서 구현해야 할 소프트웨어의 대상. 소프트웨어로 해결하고자 하는 문제 영역 이다.

도메인은 다수의 하위 도메인으로 구성된다. 각 하위 도메인이 다루는 영역은 서로 다르며, 같은 용어라도 하위 도메인마다 의미가 달라질 수 있다!

따라서, 여러 하위 도메인을 하나의 다이어그램에 모델링 하면 안 된다. (하나의 도메인을 이해하는데 방해가 됨)

(자세한 내용은 책 29 p참고! )

도메인 모델을 표현하는 방법이 두 가지가 있었다. 나는 객체 모델 밖에 몰랐는데 상태 다이어그램을 통해서도 모델링을 할 수 있었다.

주문이라는 도메인의 상태 주문전, 결제 대기중, 상품 준비중 등 상태 전이를 모델링하는 것도 도메인 모델을 표현하는 방법 중 하나였다.

1장에는 내가 알고있는 개념들과 헷갈렸던 도메인 관련 개념들이 있다.

일반적인 애플리케이션 아키텍처를 짚고 넘어갈 수 있었다.

표현 - 응용 - 도메인 - 인프라 - DB

쉽게 접할 수 있는 온라인 서점 을 주제로 하여 쉬운 예제들로 설명이 되어있다.

또한, 코드 가독성 및 이해를 높일 수 있는 팁에 대해서도 많이 소개를 하고 있었다. (예를 들면, 밸류타입)

6장 응용 서비스와 표현 영역에서 처음보는 좋은 것들이 많았다.

권한 검사라는 내용이 있다. 서비스 단에서 권한 검사를 하기도 한다는 점과 할 수 있는 법을 처음 알았다.

정말 이렇게 공부하다보면,, 모르는게 진짜 많다는 걸 알게 된다..

결론

우리 회사에서 JPA + Spring Boot 프로젝트를 많이 진행하고 있다. DDD를 보통 적용하려고 하고 있다.

하지만 나를 포함해 DDD에 대한 이해는 낮은 것 같다. 팀 단위로 같이 이 책을 스터디하여 적용을 한다면 DDD의 좋은 이점을 프로젝트에 많이 적용할 수 있지 않을까 싶다.

더 꼼꼼히 읽어 팀에 공유해야지~!

Spring boot + JPA 주니어 개발자 에게 추천합니다~~!!

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

이 글이 좋으셨다면 SNS로 함께 공감해주세요.
댓글(0) 트랙백(0)
이 리뷰를 | 추천 0        
진행중인 이벤트
나의 북마크
이벤트 세상