목록책 (13)
효습

3.1 애그리거트 백 개 이상의 테이블을 한 장의 ERD에 모두 표시하면 개별 테이블 간의 관계를 파악하느라 큰 틀에서 데이터 구조를 이해하는 데 어려움을 겪게 되는 것처럼, 도메인 객체 모델이 복잡해지면 개별 구성요소 위주로 모델을 이해하게 되고 전반적인 구조나 큰 수준에서 도메인 간의 관계를 파악하기 어려워진다. 주요 도메인 요소 간의 관계를 파악하기 어렵다는 것은 코드를 변경하고 확장하는 것이 어려워진다는 것을 의미한다. 복잡한 도메인을 이해하고 관리하기 쉬운 단위로 만들려면 상위 수준에서 모델을 조망할 수 있는 방법이 필요한데, 그 방법이 애그리거트다 애그리거트는 모델을 이해하는 데 도움을 줄 뿐만 아니라 일관성을 관리하는 기준도 된다. 애그리거트를 사용하면 복잡한 도메인을 단순한 구조로 만들어주..

2.1 네 개의 영역 표현 영역은 사용자의 요청을 받아 응용 영역에 전달하고 응용 영역의 처리 결과를 다시 사용자에게 보여주는 역할을 한다 웹 애플리케이션에서 표현 영역의 사용자는 웹 브라우저를 사용하는 사람일 수도 있고 , 외부 시스템일 수도 있다 응용 서비스는 로직을 직접 수행하기보다는 도메인 모델에 로직 수행을 위임한다 도메인 영역은 도메인 모델을 구현하며 도메인 모델은 핵심 로직을 구현한다 인프라스트럭처 영역은 구현 기술에 대한 것을 다룬다 논리적인 개념을 표현하기보다는 실제 구현을 다룬다 도메인 영역, 응용 영역,표현 영역은 구현 기술을 사용한 코드를 직접 만들지 않는다. 대신 인프라스트럭처 영역에서 제공하는 기능을 사용해서 필요한 기능을 개발한다 2.2 계층 구조 아키텍처 전체적인 아키텍처는 ..

1.1 도메인이란? 도메인이란 소프트웨어로 해결하고자 하는 문제 영역이다 한 도메인은 다시 하위 도메인으로 나눌 수 있다 특정 도메인을 위한 소프트웨어라고 해서 도메인이 제공해야할 모든 기능을 직접 구현하는 것은 아니다. 도메인마다 고정된 하위 도메인이 존재하는 것은 아니다 하위 도메인을 어떻게 구성할지 여부는 상황에 따라 달라진다. 1.2 도메인 전문가와 개발자 간 지식 공유 요구사항을 올바르게 이해하려면 개발자와 전문가가 직접 대화해야한다. 개발자와 전문가 사이에 내용을 전파하는 전달자가 많을수록 정보가 왜곡디고 손실이 발생하게 되며, 개발자는 최초에 전문가가 요구한 것도 다른 무언가를 만들게 될 수 있다 1.3 도메인 모델 도메인 모델은 기본적으로 특정 도메인을 개념적으로 표현한 것이다 도메인을 이..