
课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
领域驱动设计是目前大多数软件开发程序员都在学习的一种编程开发方法,而本文我们就通过案例分析来简单了解一下,领域驱动设计实践应用方法分享。
什么是领域驱动设计思想(DDD)呢?
DDD的全称为DomainDrivenDesign,即领域驱动设计,是在一定领域内,发现问题,抽象共性不变的流程,进而提供问题解决方案的过程。它的方法是通过一个统一语言领域建模、领域划分等一系列手段来降低复杂度,并基于面向对象分析(OOP)技术进行了分层规划,对软件开发全生命周期使用语言进行统一,并强调业务与技术相结合的一种过程。
为什么要建模?
建模通过可视化的模型,让懂业务的人和懂技术的人可以互相交流沟通。同时,我们做了一个模型之后可以很方便的复用传播,在其它项目中进行改造,后还可以对做出的决策进行文档化。
什么是“领域”模型?
领域的逻辑就是显性的专业知识。比如现在需要开发一款法务人员使用的软件系统,那么就会存在这样的问题:法务人员不懂软件开发,开发人员不懂法律条文信息,而在开发过程中二者又需要进行不断的沟通和确认,法律领域的模型就是连接二者的一个桥梁,领域模型主要倾向于将领域的知识给描述出来,管理合规性。
1、与领域交流
与领域交流是整个流程的重中之重,在该过程中业务建模人员需要对概念、操作、行为、约束等较为熟悉,因此,领域建模的一步,是明确业务边界,将系统的所有行为收缩到可视化建模子领域以内。其次需要理解数据变化的逻辑,在可视化建模的概念逻辑物理正向设计过程中,概念驱动逻辑,逻辑驱动物理,针对不同角色的用户,所关注的阶段并不同。从业务角度看,实体变更将驱动表变化;从用户角度看,业务逻辑变更要求系统演变适配。后与领域验证需求,正向推送逻辑:实体变更审核通过,则驱动对应表发生变化。此变化在物理模型上,开发者应根据表的变更,修改软件系统的实现。
2、实现对应的领域模型
合理规划业务对象的关系、继承,实体包含属性、表包含字段、表包含索引、关系关联两个实体、ER图包含实体、关系等。确定聚合关系,实体头信息和属性列表构成实体、表头信息和字段列表+索引列表构成表、版本状态与流程构成版本化。接下来需要确定值对象,如字段类型、索引类型、操作动作类型等,后领域模型验证需求,通过以上的流程我们实现了一个领域模型,如下图:
根据建立的领域模型,把通用部分抽象出来,相应的UML图也进行了一些修改,领域模型就已经创建完成了。
3、设计原型界面和交互逻辑
实现对应的一个领域模型,接下来设计原型界面和交互逻辑,交互逻辑可以理解为这个领域模型的各种事件、事件驱动。
4、领域模型自动生成结构框架代码
通过领域模型构建的UML图可直接生成项目框架代码,在框架代码中会生成相应的实体类,以及各种事件也生成了相应的event代码。
【免责声明】:本内容转载于网络,转载目的在于传递信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。更多内容请加danei456学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。