일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 코테준비
- nestjs
- 알고리즘공부
- JPA예제
- 기술공부
- DDD
- 플러터 공부
- 프로그래머스
- JPA공부
- 자바공부
- 스프링공부
- Flutter
- 플러터 개발
- 스프링부트공부
- K8S
- nestjs스터디
- JPA 공부
- Axon framework
- JPA
- 스프링 공부
- 카프카
- Kafka
- nestjs공부
- 기술면접공부
- 스프링부트
- 스프링
- querydsl
- 자료구조공부
- 코테공부
- JPA스터디
- Today
- Total
DevBoi
[DDD] 도메인 주도 설계 (이론) - 바운디드컨텍스트,유비쿼터스언어 본문
마이크로 서비스를 식별할때 대중적으로 쓰이는 방법이다.
비지니스 도메인 : 기업의 주요활동영역, 회사가 제공하는 서비스
(sub domain) 하위 도메인: 비즈니스 활동의 세분화된 영역, 제공하는 서비스 단위
쉽게 얘기하면, 도메인과 서브 도메인으로 분류할 수 있다.
하위 도메인의 개념
하위 도메인은 도메인을 표현하는 영역이다.
* 핵심
-회사가 경쟁업체와 다르게 수행하고 있는 것
-복잡성 높지만 BIz경쟁력 제공
* 일반
- 모든회사가 같은 방식으로 수행하는 비지니스 활동
- 복잡하고 구현하기 어려우나, 경쟁력을 제공하지는 않음, 알려진 영역
- 인증,권한
* 지원
- 회사 비지니스 지원활동
- 기능간단,어떠한 경쟁우위 제공하지 않음
- CRUD, ETL
유비쿼터스 언어
도메인 주도 설계에서는 도메인 지식을 변환하는 대신 도메인을 설명하기 위한 단일화된 체계 : 유비쿼터스 언어
기술용어가 아닌, 비지니스 도메인에 관련된 용어
쉽게 얘기하면, 현직자가 쓰는 언어 를 그대로 코드에 옮기는거
즉 비지니스에서 쓰는 언어를 쓰는 언어이다.
도메인 모델링
* 유비쿼터스 언어로 사실상 비즈니스 도메인 모델을 구축하는 것이다.
* 모델로써 실 세계의 복잡성을 관리
* 모델은 본질적으로 추상화의 결과이다.
* 도메인 모델링 : 유비쿼터스 언어로 사실상 비즈니스 도메인 모델을 구축하는 것이다.
* 명사와 행위 파악해야한다.
바운디드 컨텍스트
-모델의 경계
-바운디드 컨텍스트는 유비쿼터스 일관성이 유지되는 경계
-유비쿼터스 언어의 용어,원칙,비지니스 규칙은 해당 바운디드 컨텍스트 내에서만 일관성이 있다.
각 독립적으로 각 도메인별로, 사용할 수 있게 나눠져있고
컨텍스트를 도메인 별로 구분을 하고
공통화, 마스터성의 개념을 많이 없애는 것이다.
중복의 개념과는 다르고, 별도로 정리를 한다고 이해를 하라고 한다.
음.. 이건 사실 아직 확신이 서지않는다.
'Develop > [DDD]' 카테고리의 다른 글
[DDD] 도메인 모델 패턴 , Aggregate 모델링(1) (0) | 2023.05.22 |
---|---|
[DDD] 액티브 레코드 패턴 (0) | 2023.05.22 |
[DDD] 트랜잭션 스크립트 패턴 (0) | 2023.05.22 |
[DDD] 컨텍스트 매핑 (0) | 2023.05.19 |
[DDD] 마이크로서비스 개념 (0) | 2023.05.19 |