参考书籍:《领域驱动设计·精简版》
领域驱动模型
各层的作用如下:
概念讲解
1 需求的反向工程:需求是反复推敲出来的 2 DDD的中心思想:关注精简的业务模型及实现的匹配 3 在设计编码前,应该先了解领域 4 软件成为领域的反射 5 瀑布模型:业务人员——设计人员——开发人员——测试人员 6 敏捷编程:不断迭代 7 软件开发两大过程:创建优良的模型,实现代码 8 模型植根于领域、并精确反应出领域中的基础概念 9 分析模型:从代码中分离出来、多个人协助完成。缺点:不能预见模型中存在的缺陷以及领域中的复杂关系。 10 推荐的方法:紧密关联领域建模和设计,模型构建时,让开发人员参与设计。 11 实体对象:需要有唯一的标识 12 值对象:只关心某些属性,不要建立唯一的标识(如果是共享的,则应该是不可变的) 13 服务:链接两个独立的对象。服务操作设计一个领域,不属于任何对象。被执行的操作涉及到领域中其他对象。操作室无状态的。 14 模块:组织相关概念,降低复杂度 15 聚合(主题):定义对象所有权和边界。有一个根 16 工厂:封装复杂的创建过程 17 资源库: 18 界定上下文:定义模型的范围,确定上下文边界,保持模型的一致性。 19 持续集成:模型先被创建,再基于对领域心的发现和来自开发过程的反馈,再继续完善。 20 上下文映射:防止模型之间过度依赖,耦合 21 共享内核:无法被公用模型修改,目的是为了减少重复。 22 客户-供应商:一个模型依赖于另一个。子系统间接口预先明确定义。 23 顺从者:由于强烈的依赖另一方,因此只能读取其内容,却无法进行修改 24 防崩溃层:模型与其他模型之间,建立一个集成层。 25 独立方法:几个不同内容的模块,独立设计 26 开放主机服务:定义开放接口,方便其他系统调用