엔티티 2

[DDD] 아키텍처 계층과 도메인 구성 요소

아키텍처 계층(Layerd Architecture) 표현 영역 (User Interface Layer) 사용자의 요청을 응용 영역에 전달하고, 처리 결과를 다시 사용자에게 전달하는 역할을 하는 영역입니다. MVC 모델에서 View에 해당합니다. 응용 영역 (Application Layer) 사용자가 사용할 기능을 구현한 영역으로, 도메인 영역의 도메일 모델을 사용합니다. 도메인 영역(Domain Layer) 도메인 모델을 구현한 영역입니다. (핵심 비즈니스 기능을 구현한 영역입니다.) 인프라 영역 (Infrastructure Layer) DB 접근, 메세지 전송 등 기술을 구현한 영역입니다. DIP (Dependency Injection Princple) 아키텍처 계층구조는 상위 계층이 하위 계층에 의존..

JAVA/Architecture 2022.02.02

[DDD] Entity와 Value Object

Entity 엔티티는 식별자(identity)를 가지는 객체(Object)입니다. 예를 들어 도서는 ISBN을 식별자로 같은 Entity가 될 수 있습니다. 엔티티는 식별자를 갖기 때문에, Equals 비교에서 식별자가 값이 같으면 같은 객체로 인식합니다. 엔티티는 데이터 변경 이력을 관리하는 대상입니다. 즉 시간이 지남에 따라 정보를 추적할 수 있는 객체입니다. 식별자 생성 방법 채번 규칙 날짜값+일련번호와 같이 정해진 규칙에 따라 식별자를 만드는 방식 UUID(Universally unique identifier) java.util.UUID 클래스를 이용해서 식별자를 만드는 방식 직접 입력 회원 ID나 전화번호, 이메일 등과 같이 사용자가 입력하는 방식 일련번호 DB의 auto_increment 칼럼..

JAVA/Architecture 2022.01.30