# Domain Driven Design

23개의 포스트
post-thumbnail

Domain Driven Design

소프트웨어의 본질은 기술이 아니라 현실의 문제를 해결하는 것이다.현실의 문제(도메인)을 잘 파악하고 그 문제 해결이 code로서 잘 구현될 때 가장 이상적인 소프트웨어라고 할 수 있다.하지만 도메인의 문제를 잘 아는 사람과, 그것을 코드로 구현하는 사람이 분리되어 일하

2022년 5월 24일
·
0개의 댓글
·
post-thumbnail

DDD를 적용하며 실수한것들

이 글은 ddd를 깨작거리며 깨달았던 것들을 정리한 내용입니다.인증권한외에 로직이 데이터 입력,수정,삭제,조회가 전부고 그 사이에 어떤 제약조건이나 비즈니스로직, 계산이 들어가지 않을때는 적용해선 안된다.kiss(keep it small and simple, keep

2022년 4월 15일
·
0개의 댓글
·
post-thumbnail

초보개발자의 typescript로 api서버 구축기

문제의식목표참고자료과정결론Typescript를 배웠으나 Javascript처럼 사용하고 있었음테스트 코드작성에 대한 필요성(유지보수, 코드퀄리티 등)객체지향 공부(Typescript 활용)객체지향 학습DI 활용DDD(Domain-Driven Design) 학습unit

2022년 3월 8일
·
0개의 댓글
·

큰 진흙 공(BBOM) 방식과 DDD

최근에 파이썬으로 살펴보는 아키텍처 패턴이라는 책을 보고 있습니다.여러가지 좋은 이야기가 나오는데, 그 중에서 BIG BALL OF MUD(BBOM - 큰 진흙공) 방식에 대한 이야기가 나옵니다.간단하게 말하면 큰 진흙공 방식은 아키텍처가 없는 소프트웨어 시스템을 뜻합

2021년 11월 30일
·
2개의 댓글
·
post-thumbnail

DDD(Domain Driven Design)

DDD(Domain-Driven Design) 또는 도메인 주도 설계라고 부른다.

2021년 10월 12일
·
0개의 댓글
·
post-thumbnail

DDD Start! 간단 정리

해결하고자 하는 문제 영역온라인 서점 등큰 도메인 아래 하위 도메인으로 나눌 수 있다.온라인 서점은 주문, 결제, 배송, 혜택, 회원 등등의 하위 도메인으로 구성된다.특정 도메인을 개념적으로 표현한 것주문을 예로하면주문 번호와 지불할 총 금액이 있고배송정보 변경 가능주

2021년 6월 5일
·
0개의 댓글
·
post-thumbnail

Flask - Domain Driven Design(DDD)

DDD를 도입하게 된 이유는 API를 설계를 여러번 하면서 느낀 점이 정리가 되지 않는 다는 느낌이 많이 들었다.

2021년 1월 22일
·
0개의 댓글
·

모델과 구현의 관계

소프트웨어 개발 프로젝트의 맥락에 ㅎ나정해서 생각해도 모델은 다양한 형태로 나타나고 여러 역할을 수행한다.도메인 주도 설계에서는 초기 분석 단계에 도움될 뿐 아니라 설계의 기반이 되는 모델이 필요하다. 따라서 적절한 모델링 접근법을 알아야할 필요가 있다.코드와 그것의

2020년 11월 25일
·
1개의 댓글
·
post-thumbnail

Domain-Driven Design (DDD)

소프트웨어 설계에 도메인 모델링이 중심이 되고 있습니다. 비즈니스 도메인을 중심으로 소프트웨어 개발자는 사용자의 요구를 충족시키는 풍부한 기능성을 표현하고 구현할 수 있어야 합니다. 도메인 전문가(a.k.a 현업)과 긴밀한 커뮤니케이션과 협력으로 효과적인 어플리케이션을

2020년 11월 8일
·
0개의 댓글
·
post-thumbnail

도메인 주도 설계 - 16. 대규모 구조

큰 시스템에 해당 시스템의 요소를 전체 설계에 걸친 패턴에서의 역할 측면에서 해석하게 할 수 있는 지배적인 원칙이 없다면 개발자들은 나무만 보고 숲을 보지 못한다. 우리는 전체의 세부사항을 깊이 파고들지 않고도 전체의 각 부분이 담당하는 역할을 이해할 수 있어야 한다

2020년 2월 26일
·
0개의 댓글
·
post-thumbnail

도메인 주도 설계 - 15. 디스틸레이션

디스틸레이션(distilation)은 혼합된 요소를 분리해서 본질을 좀더 값지고 유용한 형태로 뽑아내는 과정이다. distilation이라는 단어의 사전적 의미처럼 도메인 모델은 여러 번의 증류 과정을 거쳐 중요한 부분과 중요하지 않은 부분을 명확히 구분할 수 있게 된

2020년 2월 26일
·
0개의 댓글
·
post-thumbnail

도메인 주도 설계 - 14. 모델의 무결성 유지

도메인 모델은 단일화(unification)을 유지해야 한다. 단일화란 모델에서 사용하는 각 용어가 모호하지 않고 모순되는 규칙이 없는 일관성 있는 상태를 뜻한다. 모델의 단일화는 소프트웨어 개발 과정에서 여러 요인에 의해 흔들릴 수 있다. 대규모 시스템을 개발할 때는

2020년 2월 24일
·
0개의 댓글
·
post-thumbnail

도메인 주도 설계 - 12. 모델과 디자인 패턴의 연결

지금껏 연구되어 왔던 수많은 디자인 패턴들은 기술적인 측면에 좀 더 초점을 맞춘다. 하지만 그 중 일부는 도메인에서 마주치는 의미 있는 개념에 사용할 수 있다. 이번 장에서는 개념적인 차원에서 도메인 주도 설계 과정에 적용할 수 있는 디자인 패턴을 소개한다.프로세스 모

2020년 2월 23일
·
0개의 댓글
·
post-thumbnail

도메인 주도 설계 - 10. 유연한 설계

소프트웨어는 1차적으로 사용자를 위한 것이지만, 다른 의미에서 개발자를 위한 것이기도 하다. 개발이 진행될수록 현재의 레거시 코드로 인한 중압감에 시달리지 않고 프로젝트 진행을 촉진하려면 변경을 수용하고 즐겁게 작업할 수 있는 설계가 필요하다. 이것이 바로 유연한 설계

2020년 2월 23일
·
0개의 댓글
·
post-thumbnail

도메인 주도 설계 - 09. 암시적인 개념을 명확하게

개발자들이 토의 중에 단서를 얻거나 설계상에 암시적으로 존재하는 개념을 인지하면 도메인 모델과 관련 코드를 대량으로 변환하게 되며, 그 후 하나 이상의 객체와 객체 간의 관계를 활용해 모델 내에 해당 개념을 명확하게 표현하게 된다.

2020년 2월 16일
·
1개의 댓글
·
post-thumbnail

도메인 주도 설계 - 08. 도약

심층 모델이란 도메인의 피상적인 측면은 배제하고 도메인 전문가의 주요 관심사와 가장 적절한 지식을 알기 쉽게 표현하는 모델이다...

2020년 2월 16일
·
0개의 댓글
·
post-thumbnail

도메인 주도 설계 - 06. 도메인 객체의 생명주기

도메인 객체를 관리하면서 신경써야 하는 문제는 크게 아래 2가지이다. 도메인 객체의 생명주기 동안 무결성 유지하기 생명주기 관리의 복잡성으로 모델이 난해해지는 것을 방지하기 1번 문제를 해결하기 위한 방법으로 Aggregate 패턴을 알아볼 것이고, 2번 문제를 해결하기 위한 방법으로는 Repository와 Factory 패턴에 대해 알아볼 것이다. ...

2020년 2월 8일
·
0개의 댓글
·
post-thumbnail

도메인 주도 설계 - 05. 소프트웨어에서 표현되는 모델

도메인 모델을 표현하는 세 가지 패턴(entity, value object, service)에 대해 알아본다. ENTITY 객체를 '식별성'에 의해 정의하는 경우, 이러한 객체를 entity라고 부른다. entity에는 모델링과 설계상의 특수한 고려사항이 포함돼 있다. entity는 생명주기동안 형태와 내용이 급격하게 바뀔 수도 있지만 핵심은 '연속성'을...

2020년 2월 8일
·
1개의 댓글
·
post-thumbnail

도메인 주도 설계 - 04. 도메인의 격리

LAYERED ARCHITECTURE 우리는 시스템에서 도메인과 관련이 적은 기능으로부터 도메인 객체를 분리할 필요가 있다. 도메인의 격리는 도메인 지식을 그와 상관이 없는 기술적인 부분과 혼동하거나, 애플리케이션에서 도메인 지식이 흐려지는 것을 방지할 수 있다. 얼마 전 공부했던 클린 아키텍쳐 또한 layered architecture의 일종으로 볼 수...

2020년 2월 8일
·
0개의 댓글
·
post-thumbnail

도메인 주도 설계 - 03. 모델과 구현의 연계

model driven design 코드는 그것의 기반이 되는 모델과 긴밀하게 연결되어 있어야 하며, 그러한 코드는 의미를 갖게 된다. 분석을 위한 모델과 설계를 위한 모델 지나치게 이론적이고 분석만을 위한 모델은 실제 설계에 적용하기에 부적합할 것이고 설계만을 위한 모델은 지식 탐구 과정에서 얻은 지식들을 온전히 반영하지 못할 가능성이 높다. 모델 주...

2020년 2월 8일
·
0개의 댓글
·