美文网首页读书简友广场想法
《实现领域驱动设计》笔记

《实现领域驱动设计》笔记

作者: 选科规划与志愿填报_让梦想起航 | 来源:发表于2022-11-25 09:29 被阅读0次

 2022-10-12 11:25:10

开发核心域的解决方案是一种关键性业务投入

 2022-10-12 11:25:26

领域中还同时存在问题空间(problem space)和解决方案空间(solution space)。在问题空间中,我们思考的是业务所面临的挑战,而在解决方案空间中,我们思考如何实现软件以解决这些业务挑战。

 2022-10-12 11:25:38

将关注点放在核心域上

 2022-10-12 11:42:58

限界上下文是显式的,充满语义的

 2022-10-12 16:47:43

我们应该考虑领域专家所讲的通用语言,将核心域中的概念自然地组织成单一的限界上下文

 2022-10-12 17:20:34

采用语言驱动来实施

DDD时

,你得小心

这里的底线是:如果你没有采用语言驱动,那么你就不算在和领域专家一起工作来创建限界上下文。

 2022-10-21 16:33:14

符合REST原则的系统将具有更好的松耦合性。

 2022-10-21 16:38:37

长时处理过程(

Long-Running Process)

。一个长时处理过程有时也称为Saga

 2022-10-21 16:38:44

设计长时处理过程有三种方法

 2022-10-21 16:38:58

将处理过程设计成一个组合任务,使用一个执行组件对任务进行跟踪

 2022-10-21 16:39:04

将处理过程设计成一组聚合,这些聚合在一系列的活动中相互协作

 2022-10-21 16:39:09

设计一个无状态的处理过程,其中每一个消息处理组件都将对所接收到的消息进行扩充——即向其中加入额外的数据信息——然后再将消息发送到下一个处理组件

 2022-10-21 16:49:14

唯一的身份标识和可变性(mutability)特征将实体对象和值对象(Value Objects,6)

区分开来。

 2022-10-21 16:51:49

值类型用于度量和描述事物,我们可以非常容易地对值对象进行创建、测试、使用、优化和维护。

 2022-10-21 16:52:05

当你决定一个领域概念是否是一个值对象时,你需要考虑它是否拥有以下特征:

· 它度量或者描述了领域中的一件东西。

· 它可以作为不变量。

· 它将不同的相关的属性组合成一个概念整体(Conceptual Whole)。

· 当度量和描述改变时,可以用另一个值对象予以替换。

· 它可以和其他值对象进行相等性比较。

· 它不会对协作对象造成副作用[Evans]。

 2022-10-21 16:58:51

一个共享的不变值对象可以从持久化存储中获取,此时可以通过标准类型的领域服务(7)

或工厂(11)

来获取值对象。

 2022-10-21 17:06:02

根据领域模型来设计数据模型,而不是根据数据模型来设计领域模型。

 2022-10-24 16:22:27

领域中的服务表示一个无状态的操作,它用于实现特定于某个领域的任务。当某个操作不适合放在聚合(10)

和值对象(6)

上时,最好的方式便是使用领域服务了。

 2022-10-24 16:22:48

我们应该尽量避免在聚合中使用资源库(12)

 2022-10-24 16:54:51

领域服务能做什么?

· 执行一个显著的业务操作过程。

· 对领域对象进行转换。

· 以多个领域对象作为输入进行计算,结果产生一个值对象。

 2022-10-24 16:56:55

过度地使用领域服务将导致贫血领域模型

[Fowler, Anemic],即所有的业务逻辑都位于领域服务中,而不是实体和值对象中。

 2022-10-25 11:35:52

在DDD中,模型中的模块表示了一个命名的容器,用于存放领域中内聚在一起的类。

 2022-10-25 17:43:38

先考虑模块,再是限界上下文

 2022-10-25 18:02:43

原则:在一致性边界之内建模真正的不变条件

 2022-10-25 18:03:07

原则:设计小聚合

 2022-10-26 11:15:41

原则:通过唯一标识引用其他聚合

 2022-10-26 11:23:49

在边界之外使用最终一致性

 2022-10-26 15:54:43

向聚合中注入资源库或者领域服务是有害的。这样做的原因可能是希望在聚合内部查找一个所依赖对象的实例,所依赖的对象可能是另一个聚合,也有可能是一系列的聚合。

相关文章

  • 读《领域驱动设计》有感

    写完《DDD领域驱动设计初探》后,教主推荐了两本领域驱动设计的书--《领域驱动设计》和《实现领域驱动设计》,...

  • 1.复杂系统中采用DDD-lite实现模糊需求--开篇

    一、序 2015年底初识DDD(领域驱动设计),阅读和学习《领域驱动设计》By Eric和《实现领域驱动设计》By...

  • 《实现领域驱动设计》笔记

    2022-10-12 11:25:10 开发核心域的解决方案是一种关键性业务投入 2022-10-12 11:25...

  • DDD战略1 领域驱动设计与软件复杂度

    GitChat课程《领域驱动设计--战略篇》笔记,课程作者张逸 一.领域驱动设计(Domain Driven De...

  • 领域驱动设计DDD

    最近在换工作,利用间隙看了两本领域驱动设计的经典书籍:《领域驱动设计:软件核心复杂性应对之道》,《实现领域驱动设计...

  • 《领域驱动设计精粹》读书笔记

    《领域驱动设计精粹》的作者Vaughn Vernon同样也是《实现领域驱动设计》的作者。书中精炼的概括了《DDD》...

  • 本周读书复盘

    1.《实现领域驱动设计》 DDD领域驱动设计这几年在软件设计领域非常火,特别是进来软件的业务需求日益复杂,软件规模...

  • 领域驱动设计释厄录

    基础 学习DDD看的书《实现领域驱动设计》基础只是,概念《领域驱动设计:软件核心复杂性应对之道 》使用,流程,串联...

  • 实现领域驱动设计-领域服务

    领域服务定义 先看看领域服务的定义:领域中的服务表示一个无状态的操作,它用于实现特定于某个领域的任务。当某个操作不...

  • 实现领域驱动设计-领域事件

    定义 将领域中所发生的活动建模成一系列的离散事件。每个事件都用领域对象来表示。领域事件是领域模型的组成部分,表示领...

网友评论

    本文标题:《实现领域驱动设计》笔记

    本文链接:https://www.haomeiwen.com/subject/htphtdtx.html