小儿子来到父亲那里,问婴儿:什么是DDD?但是我了解


我无法解决一个问题。似乎上面有大量信息:书籍,文章,报告。但是,该主题的复杂性和多功能性并未立即体现其本质。您能帮我吗?

要真正理解一个复杂的主题,您需要阅读和思考许多资源。这样做的好处是,它们每个人都以自己的方式提供相同的信息,并且其中某些方法可能仅对您有用。因此,来吧,我将尽力为公共信息空间做出贡献。那你有什么问题


什么是域驱动设计?

这是一种使复杂主题领域中的业务流程自动化的方法。


那么DDD的目标是自动化吗?

不,没有它,您可以实现自动化。DDD的目的是复杂性管理。


需要管理什么的复杂性,为什么要管理?

. , . , , [1]. , , . , — , , . — , , , . , , , .


, . , , -, , . , .


-, , . — , , .


DDD .


. : DDD? , , ?

, – .


, « »? ?

, . – , . , , -, , -, .


, . «». ? ?

, . , . , . . , .


. , , , . , , , . . ?

, ?


, .

. ?


.

?


. , .

, , , DDD: .


- “ ”.

, . , . . DDD , , , , [2].


, , ?

. . — , “”. .


? -, . — .

-, , — , . . -, , , . , ?


, .

. . — ; — . - , , . .


. , -, , . -, . - , , .


, , , .


. , .

. , ?


, . , .

. DDD : . . , . : . , , “” .


. , , , ? , . , , . : , , . — . [6].


: DDD? . , , , - . ( ), , , , -. - “” . , , , “ ”, , “ , ”[2]. , DDD.


, . , , , , , .


, , -. .

?


, , . — , - .

: , . , , , [1]. DDD Bounded context.


? : ?

, . . , , , , .


, . ? “ ” - . , “ ”. ?

, . , , , , “ambiguity doesn't compile”[4]


, -. ?

, , . , ? , — , ?


.

, , [7], , , .


, .

. , , : , ? . . . . Bounded context (context) (bound) . , , “ ”. , .


Bounded context ?

. Bounded context. : , , .


, ? DDD .

-, , , .


-, — , . , .


, , .


: , — DDD, ?

-, , , . , , , , - , .


-, . . ? Bounded context, , ? , [3] BC?


.


, , DDD .

, DDD — . : “… , , , "[5].


DDD : . . , - . : , . , , - .



  1. .
  2. . -
  3. . Event Storming
  4. 亚当·迪米特鲁克(Adam Dymitruk)。事件建模:这是什么?
  5. 西蒙·南丁格尔(Simon Nightingale)。每个人的教学法。
  6. 水果或蔬菜

All Articles