본문 바로가기

DDD

(29)
도메인을 서브도메인으로 나누기 "주문 접수 프로세스"의 다양한 측면(주문 접수, 배송, 청구 등)이 분리될 수 있다는 것은 분명합니다. 그것은 우리가 디자인에서 동일한 분리를 따를 수 있다는 매우 강력한 힌트입니다. 이러한 각 영역을 도메인이라고 부를 것입니다. 도메인 주도 설계의 세계에서 우리는 "도메인"을 "일관된 지식의 영역"으로 정의할 수 있습니다. 불행히도 그 정의는 유용하기에는 너무 모호하므로 다음은 도메인에 대한 대체 정의입니다. "도메인"은 "도메인 전문가"가 전문적인 것입니다! 이것은 실제로 훨씬 더 편리합니다. "청구"가 무엇을 의미하는지 사전 정의를 제공하기 위해 애쓰는 것보다 "청구"는 청구 부서의 사람들(도메인 전문가)이 하는 일이라고 말할 수 있습니다. 각 도메인이 겹치는 것을 볼 수 있습니다. 도메인이 약간..
비즈니스 이벤트(도메인 이벤트)를 통해 도메인 이해하기 요구 사항 수집에 대한 DDD 접근 방식은 개발자와 도메인 전문가 간의 공유된 이해 구축을 강조합니다. 그러나 이러한 이해를 발전시키려면 어디서부터 시작해야 할까요? 첫 번째 지침은 데이터 구조보다 비즈니스 이벤트에 초점을 맞추는 것입니다. 비즈니스는 데이터를 정적으로 갖고 있지 않습니다. 비즈니스는 일련의 데이터(도큐먼트) 프로세싱(트랜스폼) 과정입니다. 따라서 데이터들의 변화와 변화 간(함수 간) 관계에 대한 이해가 중요합니다. 또한 어떤 일련의 비즈니스 트리거(이벤트 트리거) - push(publish-trigger) or pull(subscribe-observation)를 이해하는 것이 중요합니다. 이 트리거 역할을 하는 것이 바로 도메인 이벤트입니다. 도메인 이벤트는 우리가 모델링하려는 거의 모..
공유 모델의 중요성(The Importance of a Shared Model) https://fsharpforfunandprofit.com/ddd/ Domain Driven Design | F# for fun and profit This page contains links to the slides, video and code from my talk “Domain Modeling Made Functional”. Here’s the blurb for the talk: Statically typed functional programming languages like F# encourage a very different way of thinking about types. Th fsharpforfunandprofit.com 워터폴의 한계 애자일의 문제점 공유 모델 : 개발팀 / 다른 이해당..
[우아한테크세미나] 190620 우아한객체지향 by 우아한형제들 개발실장 조영호님 요약 [우아한테크세미나] 190620 우아한객체지향 by 우아한형제들 개발실장 조영호님 - YouTube [수정본] 우아한 객체지향 (slideshare.net) [수정본] 우아한 객체지향 2019년 6월 20일 우아한 테크 세미나 "우아한 객체지향" 발표자료 수정본 www.slideshare.net 설계의 핵심은 의존성의 관리다! 역할, 책임, 협력은 의존성 관리를 위해 존재한다. DDD를 배우자. 도메인 모델 기준으로 패키지를 분리하여 객체 참조 범위를 나눈다. 애그리거트로 참조경계, 트랜잭션경계, 도메인규칙 경계를 설정한다. 다른 애그리거트객체 참조를 레포지토리 패턴으로 구현한다. 패키지로 레이어를 나눈다. 설계는 코드 배치 의사결정. 클래스, 패키지(모듈), 프로젝트 어디에 코드를 둘 것인가 변경에 초..
NestJs 관련 학습 컨텐츠 소개 NestJS - A progressive Node.js framework NestJS - A progressive Node.js framework NestJS is a framework for building efficient, scalable Node.js web applications. It uses modern JavaScript, is built with TypeScript and combines elements of OOP (Object Oriented Progamming), FP (Functional Programming), and FRP (Functional Reactive Progra nestjs.com NestJs 핵심 학습을 위한 컨텐츠를 소개한다. 원래는 정리 및 요약 글을 작성하는 ..