티스토리 뷰

반응형

[도메인 주도 설계 핵심 - http://www.yes24.com/Product/Goods/48577718]

 

  • DDD
    • 높은 가치를 제공하는 소프트웨어를 설계하고 구현하는 데 있어 전략적, 전술적으로 도움을 주는 도구들의 모음

 

DDD가 우리에게 상처를 줄까?

  • 아니다!
    • 복잡성을 이기는 데 수반되는 고통을 줄이기 위해 DDD가 여러 도움을 줄 것이다

 

좋은, 나쁜 그리고 효과적인 설계

  • "설계하지 않는 것이 낮은 비용의 소프트웨어로 이어진다" => X
  • "소프트웨어가 세상을 집어삼킨다" => O
  • 설계하지 않는 것으로 기대했던 비용 절감은 심사숙고한 설계 없이 소프트웨어 제작에만 박차를 가한 사람들을 교묘하게 속였던 오류이다
설계가 필수적인 것인지, 안 해도 괜찮은지에 대한 질문은 요점에서 많이 벗어나 있다.
설계는 필연적이다.
좋은 설계의 대안은 나쁜 설계다.
절대 설계하지 않는 것이 아니다.
- Book Desigin: A Practical Introduction by 더글러스 마틴
  • 심사숙고한 설계로 소프트웨어를 제작하는 것이 비쌀 것 같아서 두렵다면,
    앞으로 얼마나 계속 그 시스템을 사용해야 하고,
    더 나아가 나쁜 설계를 수정해야 하는 것에 얼마나 더 큰 비용이 들 것인지 생각해야 한다
  • 좋은 것과 효과적인 것은 밀접한 관련이 있다
  • 효과적인 설계 ~ 조직이 무엇에 강점을 가져야 하는지 이해시키고 정확한 소프트웨어 모델을 생성하도록 가이드할 때 사용한다
대부분의 사람들이 '설계를 고민한다는 것'이 '어떻게 생긴 것인지 고민하는 것'으로 착각한다.
설계자에게 어떤 박스를 건네주고 "좋아 보이게 만들어!"라는 이야기 정도로 생각한다.
이건 우리가 생각하는 설계가 아니다.
설계는 단지 어떻게 생겼는지, 어떤 느낌인지가 아니라, 그게 어떻게 동작하는지에 대한 것이다.
- 스티브 잡스

 

전략적 설계

  • 세세한 구현으로 들어가기에 앞서 두꺼운 붓 터치처럼 사용하며
    비즈니스상 전략적으로 중요한 것, 중요도에 따라 일을 나누는 방법
    그리고 필요에 따라 통합하는 최적의 방법을 강조한다
  • 관련 있는 것
    • 바운디드 컨텍스트(Bounded Context)
    • 보편언어(Ubiquitous Language)
    • 서브도메인(Subdomains)
    • 컨텍스트 매핑(Context Mapping)
    • 컨텍스트 맵(Context Map)

 

전술적 설계

  • 도메인 모델의 세부사항들을 그리기 위해 얇은 붓을 사용하는 것과 같다
  • 관련 있는 것
    • 엔터티
    • 객체(Value Object)
    • 애그리게잇(Aggregate)
    • 도메인 이벤트(Domain Events)

 

반응형
댓글
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/01   »
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 31
글 보관함