我们把三层架构等除了领域驱动之外的架构方式都可以归纳为以数据为中心的架构方式,在图中是黑色的粗实线;领域驱动设计在图中是绿色的粗实线。
-
当软件在开发初期,以数据驱动的架构方式非常容易上手,但是随着业务的增长和项目的推进,软件开发和维护难度急剧升高。
-
领域驱动设计则在项目初期就处在一个比较难以上手的位置,但是随着业务的增长和项目的推进,软件开发和维护难度平滑上升。
这幅图形象的解释了领域驱动设计和传统的软件架构模式两者在软件开发过程中解决复杂性之间的差异。
领域驱动设计的核心是什么/strong>
战略设计:
说到战略设计,我们要站在一个比较高的视角来看待这个问题,战略设计要解决的就是某个领域的问题,所以战略设计时,我们要构建好领域模型,保证我们的大方向是不会错的
战略设计主要从业务视角出发,建立业务领域模型,划分领域边界,建立通用语言的限界上下文,限界上下文可以作为微服务设计的参考边界。
领域模型
DDD的优势及未来
DDD是一套完整而系统的设计方法,并非一种架构。它能带给你从战略设计到战术设计的标准设计过程,使得你的设计思路能够更加清晰,设计过程更加规范,有助于提高技术人的架构设计能力。无论是在新项目中设计微服务,还是将系统从单体架构演进到微服务,DDD 都大有助力。
倘若能一直保持DDD的开放性,保持DDD的独立性,我觉得在未来的五年乃至十年,DDD仍将焕发生命力,只是它的面貌会更加多姿多彩,甚至超过Eric Evans对DDD的原初定义。毕竟,软件系统的核心只有两个:领域和算法。
DDD集训
为了帮助大家更快的了解和熟悉DDD驱动领域设计,这里给大家推荐一门高级架构师Zilor的在线直播课程~从原理到实战,全程干货,带你完整走一遍 DDD+ 微服务设计的全流程,重点讲解其中的技术要点、设计原则和注意事项~相信通过本次的集训,你一定可以收获满满!
长按扫码,入群学习
如扫码失败,请添加微信 :
estherzry
1
DAY 01—DDD初探
01 领域、子域、核心域
02 如何定义领域边界
03 实体与值对象
04 聚合与聚合根
2
DAY 02—DDD设计思想
01 领域事件
02 DDD分层架构
03 微服务架构模型
3
DAY 03—DDD与微服务设计
01 领域建模
02 代码模型
03 边界与视图
视频合集,免费送!!!
赶紧扫码,抢占名额!!!

长按扫码,入群学习
仅限前99名
如扫码失败,请添加微信 :
estherzry
文章知识点与官方知识档案匹配,可进一步学习相关知识Java技能树首页概览91534 人正在系统学习中
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!