📕 book/도메인 주도 개발 시작하기
-
3장 - 애그리거트📕 book/도메인 주도 개발 시작하기 2022. 11. 2. 16:05
⭐ 애그리거트 도메인 객체 모델이 복잡해지면 개별 구성요소 위주로 모델을 이해하게 되고 전반적인 구조나 큰 수준에서 도메인 간의 관계를 파악하기 어려워진다. 도메인 요소 간의 관계를 파악하기 어렵다는 것은 코드를 변경하고 확장하는 것이 어려워진다는 것을 의미 상위 수준에서 모델이 어떻게 엮여 있는지 알아야 전체 모델을 망가뜨리지 않으면서 추가 요구사항을 모델에 반영할 수 있는데, 세부적인 모델만 이해할 경우에는 코드 변경을 최대한 회피하는 쪽으로 요구사항을 협의하게 된다. 따라서, 복잡한 도메인을 이해하고 관리하기 쉬운 단위로 만들려면 상위 수준에서 모델을 조망할 수 있는 방법이 필요하다. → 애그리거트 관련된 객체를 하나의 군으로 묶음. 수 많은 객체를 애그리거트로 묶어서 바라보면 상위 수준에서 도메인..
-
2장 - 아키텍처 개요📕 book/도메인 주도 개발 시작하기 2022. 10. 27. 00:54
📌 네 개의 영역 아키텍처를 설계할 때의 전형적인 네 가지 영역 표현 응용 도메인 인프라스트럭처 표현 영역 (UI 영역) 사용자의 요청을 받아 응용 영역에 전달하고 응용 영역의 처리 결과를 다시 사용자에게 보여주는 역할 사용자의 요청을 해석해서 응용 서비스에 전달 응용 서비스의 실행 결과를 사용자가 이해할 수 있는 형식으로 변환하여 응답 웹 애플리케이션의 표현영역은 HTTP 요청을 응용 영역이 필요로 하는 형식으로 변환해서 응용 영역에 전달하고 응용 영역의 응답을 HTTP 응답으로 변환하여 전송 응용 영역 시스템이 사용자에게 제공해야 할 기능을 구현 응용 영역은 기능을 구현하기 위해 도메인 영역의 도메인 모델을 사용한다. 사용자에게 제공할 기능을 도메인 모델을 이용해서 구현 응용 서비스는 로직을 직접 수..
-
1장 - 도메인 모델 시작하기📕 book/도메인 주도 개발 시작하기 2022. 10. 4. 22:12
도메인 도메인은 여러 하위 도메인으로 구성된다. 한 하위 도메인은 다른 하위 도메인과 연동하여 완전한 기능을 제공 ex) 고객이 물건을 구매 주문, 결제, 배송, 혜택 하위 도메인의 기능이 엮이게 된다. 특정 도메인을 위한 소프트웨어라고 해서 도메인이 제공해야 할 모든 기능을 직접 구현하는 것은 아니다. 도메인마다 고정된 하위 도메인이 존재하는 것은 아니다. 하위 도메인을 어떻게 구성할지 여부는 상황에 따라 달라진다. 도메인 전문가와 개발자 간 지식 공유 전문가 해당 도메인에 대한 지식과 경험을 바탕으로 본인들이 원하는 기능 개발을 요구 개발자 전문가의 요구사항을 분석하고 설계하여 코드를 작성하며 테스트하고 배포한다. 요구사항을 올바르게 이해하는 것이 중요하다. “Garbage in, Garbage ou..