课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
领域驱动设计是目前互联网中比较热门的一种软件开发方式,而今天我们就一起来了解一下,领域驱动设计都会用到哪些设计模型。
领域驱动设计同样也定义了几个连接领域模型的高层次概念,以此来修改,创建领域模型。
.Entity(实体):连续状态变化的对象,而不是传统使用属性来定义的对象。
.valueobject(值对象):一个不可变且有属性的对象,但是它没有的标识符。
.DomainEvent(领域事件):系统内记录与模型活动相关的分离事件的对象,系统内所有的事件都应该能够被跟踪,一个领域事件仅被领域专家关心的事件类型创建。
.Aggregate(聚合):根据组边界定义值对象和实体的聚合,而不是允许单个实体或者值对象执行它自己所有的动作,聚合的对象都有一个统一的根对象(在书籍中写的是选择一个实体作为根),这样,外部对象不再直接访问聚合内部的单个对象或者实体,而是直接访问单一的聚合根对象,并且使用这个对象将指令传递给对应的分组。这个实践和设计模式编码相关联。
.Service(服务):本质上是来说,一个服务就是一个操作或者业务逻辑的组合,这样就表明了它在对象领域中不适用。换句话来说,如果某些功能必须存在且不能和实体或者值对象相关联,它可以定义为服务。
.Repositories(仓库):不要和常见的版本控制仓库相混淆,仓库在DDD里面的意思就是一个服务,它提供一个全局接口来访问特定聚合内部所有的实体类和值对象。应该包括创建,修改,删除聚合内部对象的方法。然而,通过使用仓库服务来构造数据查询的目的是删除业务逻辑对象模型中的数据查询方法。
.Factories(工厂):正如我们在设计模式文章里面讨论的那样,DDD建议使用工厂来创建复杂对象和聚合,保证客户端不用知道对象内部组成。
同样,DDD也着重强调越来越流行的持续集成实践,它要求所有开发团队使用同一个仓库共享代码,并且每天推送代码到仓库。在每天结束的时候自动检查代码仓库完,运行单元测试,回归测试等过程。这样就可以快速检测出潜在存在的问题并在下一次提交代码的时解决这个问题。
希望这辈子,最让你无悔的事情就是来达内学习!学习向来不是件易事,但无论过程多么艰难,希望你依然热爱生活,热爱学习!永远记得,达内将与你一同前行!现在扫码,立即领取万元课程礼包,助力0基础快速入行,为你梳理行业必备技能,全方位了解岗位发展前景!
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!更多内容请在707945861群中学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。