- 1、本文档共15页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[教程]-领域驱动设计(DDD)
本文内容提要:
1.? HYPERLINK /page/117717/ \l s1 领域驱动设计之领域模型
2.? HYPERLINK /page/117717/ \l s2 为什么建立一个领域模型是重要的
3.? HYPERLINK /page/117717/ \l s3 领域通用语言(Ubiquitous Language)
4. HYPERLINK /page/117717/ \l s4 ?将领域模型转换为代码实现的最佳实践
5.? HYPERLINK /page/117717/ \l s5 领域建模时思考问题的角度
6. HYPERLINK /page/117717/ \l s6 ?领域驱动设计的标准分层架构
7.? HYPERLINK /page/117717/ \l s7 领域驱动设计过程中使用的模式
HYPERLINK /page/117717/ \l s7_1 关联的设计
HYPERLINK /page/117717/ \l s7_2 实体(Entity) HYPERLINK /page/117717/ \l s7_3 值对象(Value Object) HYPERLINK /page/117717/ \l s7_4 领域服务(Domain Service) HYPERLINK /page/117717/ \l s7_5 聚合及聚合根(Aggregate,Aggregate Root) HYPERLINK /page/117717/ \l s7_6 工厂(Factory) HYPERLINK /page/117717/ \l s7_7 仓储(Repository)
8.? HYPERLINK /page/117717/ \l s8 设计领域模型的一般步骤
9.? HYPERLINK /page/117717/ \l s9 领域驱动设计的其他一些主题
10.? HYPERLINK /page/117717/ \l s10 一些相关的扩展阅读
领域驱动设计之领域模型
2004年Eric Evans发表Domain-Driven Design – Tackling Complexity in the Heart of Software (领域驱动设计),简称Evans DDD。领域驱动设计分为两个阶段:
1. ?以一种领域专家、设计人员、开发人员都能理解的“通用语言”作为相互交流的工具,在不断交流的过程中不断发现一些主要的领域概念,然后将这些概念设计成一个领域模型;
2. ?由领域模型驱动软件设计,用代码来表现该领域模型。
由此可见,领域驱动设计的核心是建立领域模型。领域模型在软件架构中处于核心地位;软件开发过程中,必须以建立领域模型为中心。
为什么建立一个领域模型是重要的
领域驱动设计告诉我们,在通过软件实现一个业务系统时,建立一个领域模型是非常重要和必要的,因为领域模型具有以下特点:
1. 领域模型是对具有某个边界的领域的一个抽象,反映了领域内用户业务需求的本质;领域模型是有边界的,只反应了我们在领域内所关注的部分;
2. 领域模型只反映业务,和任何技术实现无关;领域模型不仅能反映领域中的一些实体概念,如货物、书本、应聘记录、地址等;还能反映领域中的一些过程概念,如资金转账,等;
3. 领域模型确保了我们的软件的业务逻辑都在一个模型中,都在一个地方;这样对提高软件的可维护性,业务可理解性以及可重用性方面都有很好的帮助;
4. 领域模型能够帮助开发人员相对平滑地将领域知识转化为软件构造;
5. 领域模型贯穿软件分析、设计,以及开发的整个过程;领域专家、设计人员、开发人员通过领域模型进行交流,彼此共享知识与信息;因为大家面向的都是同一个模型,所以可以防止需求走样,可以让软件设计开发人员做出来的软件真正满足需求;
6. 要建立正确的领域模型并不简单,需要领域专家、设计、开发人员积极沟通共同努力,然后才能使大家对领域的认识不断深入,从而不断细化和完善领域模型;
7. 为了让领域模型看的见,我们需要用一些方法来表示它;图是表达领域模型最常用的方式,但不是唯一的表达方式,代码或文字描述也能表达领域模型;
8. 领域模型是整个软件的核心,是软件中最有价值和最具竞争力的部分;设计足够精良且符合业务需求的领域模型能够更快速的响应需求变化。
领域通用语言(Ubiquitous Language)
我们认识到由软件专家和领域专家通力合作开发出一个领域的模型是绝
您可能关注的文档
最近下载
- 人教版五年级数学上册全册练习课件.pptx
- 2023 年成人高等学校招生全国统一考试专升本《英语》试题及答案.pdf
- 潮汕食品推广方案策划.pptx
- 水电站大坝堰基防渗墙施工试验方案.doc
- 精细化工行业数字化解决方案.docx
- 22J403-1楼梯 栏杆 栏板(一)图集.pptx
- 七年级语文古诗赏析之龟虽寿省公开课一等奖全国示范课微课金奖PPT课件.pptx
- 智慧树知到《ERP沙盘模拟经营(山东联盟)》章节测试答案.docx VIP
- AEC - Q100-007 - Rev-B - Fault Simulation and Test Grading故障模拟和测试分级.pdf
- 工伤保险条例全文.doc VIP
文档评论(0)