DDD
-
从MVC到DDD:探寻软件架构的本质变迁
DDD是一种针对复杂系统的设计和开发方法,它强调将系统的复杂性集中在业务领域,通过建立一个丰富的领域模型来驱动软件设计。
-
我们聊聊DDD、SOA、微服务和微内核
微内核架构又叫插件化架构,包含两类组件:核心系统(core system)和插件模块(plug-in modules)。核心系统负责和业务无关的通用功能,例如模块加载、模块间通信等;插件模块负责实现具体的业务逻辑,例如“学生信息管理”系统中的“手机号注册”功能。
-
DDD四层微服务架构
这个工程比较好理解,类似于我们传统的理解的RPC包,或者叫API包,在Maven工程里,一般定义为一个子Module,里面主要定义的是Feign接口(如service.XxxFeignService),DTO对象(contract.dto.XxxRequest/XxxResponse)等等。
-
DDD领域驱动设计:为什么公司需要这种方法,谁使用它,它的本质是什么?
在动态且不断变化的技术世界中构建满足企业和用户的需求和期望的软件可能具有挑战性。软件公司逐渐需要一种可行的方式来让业务和产品团队之间的沟通更加透明。
-
解密DDD:高内聚对象组的维护之道
JPA 与 DDD 的==聚合写== 是绝配,但在 “读” 场景 往往会引发各种性能问题。这也是很多公司弃用 JPA 而选择 MyBatis 的主要原因,就其本质并不是框架的错,而是将框架用在了错误的场景。
-
不懂领域驱动设计?这 21 个问题详解你的疑惑
DDD提供了一套概念、模式和技术,帮助开发人员将业务领域的复杂性进行分解和组织,并建立起领域模型。领域模型是对业务领域的抽象和建模,它反映了业务过程、规则和概念,并与软件系统的设计和实现紧密结合。
-
深入探究DDD领域建模的方法:从概念到实践
随着平台业务的日益增长,单体的应用架构显然已经不能满足正常的业务需求,将平台进行微服务拆分,对平台进行重新架构势在必行。
-
为什么从 MVC 到 DDD,架构的本质是什么?
DDD 架构的一种分层结构,也可以有其他种方式,核心的重点在于适合你所在场景的业务开发。以下的分层结构,是小傅哥在使用 DDD 架构多种的方式开发代码后,做了简化和处理的。右侧的连线是各个模块的依赖关系。
-
如何在DDD中建立领域模型
前面我们讨论了DDD的战略设计和战术设计。在本文中我们将继续探讨领域模型。
-
Spring Event 玩转 DDD 领域事件
领域事件是领域驱动设计(Domain-Driven Design,简称DDD)中的一个重要概念,特指在领域模型中发生的有意义的事件,是对领域模型中的重要业务动作执行结果的抽象,如订单创建、支付完成等。
-
DDD领域驱动工程落地实战
DDD分为战略设计与战术设计。一般来说,领域建模是属于战略层的,而DDD工程落地是属于战术层的,两者是否结合使用,视实际情况而定,比如传统的MVC架构也能使用DDD进行领域建模,DDD架构最好是先做DDD领域建模。
-
想用好 DDD 必须先过 Spring Data 这关
DDD 是一种领域驱动的设计方法,旨在通过建立对领域模型的清晰理解来解决业务问题。和事务脚本不同,DDD 使用面向对象设计来应对复杂的业务场景。
-
浅谈DDD,你学会了吗?
本文主要从DDD是什么,能干什么,不能干什么,怎么干(领域建模方法、实现方法论)几个方面来聊了一下领域驱动,当然,一千个人有一千种对领域驱动的理解。
-
DDD的哲学:核心域、统一语言
我们用若干章节探讨了领域驱动设计的哲学内涵。两者之间的这种契合关系并非偶然。
-
DDD的哲学:模型的关联、演进和认知
DDD中,领域(事物)的概念以实体、值对象、聚合、模块等方式表达出来。有些伙伴把领域中的主要聚合或实体识别出来后,却没有识别它们之间的关联,就认为已经完成了领域建模。这样的模型其实是不完整的。