随笔分类 -  DDD领域驱动设计

DDD领域驱动设计
摘要:COLA 4.x和DDD项目实践精粹本技术专栏在《COLA 4.x架构入门和项目实践》基础之上,对基于COLA架构的项目开发实践进行了提炼和总结;同时,针对其中的一些知识点进行扩展和延伸,包括COLA架构、CQRS模式、代码落地实践和建议规则、领域事件多种实现方式、聚合根工厂模式、MapStruct实体映射工具开发实践等等。 阅读全文
posted @ 2021-10-30 00:00 Rickie 阅读(2231) 评论(2) 推荐(0) 编辑
摘要:阿里开源COLA 4.0源码编译和部署过程COLA 是 Clean Object-Oriented and Layered Architecture的缩写,代表“整洁面向对象分层架构”。 目前COLA已经发展到COLA 4.0。关于COLA架构详细入门和示例应用项目,可以访问《COLA 4.x架构入门和项目实践》技术专栏。 阅读全文
posted @ 2021-10-16 19:13 Rickie 阅读(2667) 评论(0) 推荐(0) 编辑
摘要:阿里DDD项目最佳实践-COLA 架构总览《COLA 4.x架构入门和项目实践》技术专栏首先介绍了COLA框架的使用入门,以及与IDEA开发工具的集成等等;然后基于COLA架构,创建DDD经典示例项目-货物运输系统,详细介绍了DDD领域建模、适配层、应用层、领域层和基础设施层的代码开发、防腐层(ACL)设计与实现、领域事件(Domain Event)入门实践、以及基于Kafka消息中间件的消息发布和订阅等等。内容由浅入深,从开发实战出发,逐步掌握基于COLA架构和DDD领域建模思想构建复杂业务应用系统。 阅读全文
posted @ 2021-09-21 15:13 Rickie 阅读(2559) 评论(0) 推荐(0) 编辑
摘要:Martin Fowler大神 - 微服务、贫血模型、重构、敏捷开发方法论Martin Fowler大神1963年出生在英格兰的沃尔索耳,并在94年移居到了美国。 而在软件开发领域,大名鼎鼎的敏捷开发方法论,就是他首创的。 除了被公认为全球知名的面向对象分析设计、UML、模式等方面的专家,现在还担任ThoughtWorks公司的首席科学家。 阅读全文
posted @ 2021-09-17 13:02 Rickie 阅读(563) 评论(0) 推荐(0) 编辑
摘要:领域模型的核心本质是什么?在指导软件设计时,我们需要对业务知识进行提炼和精简,建立一个所谓的模型来指导设计开发。而 DDD 的真正价值就是在描述该如何建立这个能够指导开发的 "领域模型"。Domain-Driven Design 其实是一种简称,其真正想表达的是 Domain Model Driven Design,即领域模型驱动设计。 阅读全文
posted @ 2021-09-11 10:17 Rickie 阅读(415) 评论(0) 推荐(0) 编辑
摘要:基于阿里开源的COLA架构和DDD领域驱动设计构建货物运输系统COLA 是 Clean Object-Oriented and Layered Architecture的缩写,代表“整洁面向对象分层架构”,是来自阿里技术专家的开源项目。目前COLA已经发展到COLA 4.0。 COLA既是框架,也是架构。COLA架构融合了常见的DDD代码模型,可以帮助开发人员快速实践并落地DDD领域建模的应用项目。 阅读全文
posted @ 2021-09-10 13:18 Rickie 阅读(1810) 评论(0) 推荐(0) 编辑
摘要:Axon框架快速入门和DDD项目实践Axon 框架是基于JVM平台的开源产品,由Allard Buijze于2009年创立。2017年7月,成立了一家独立公司AxonIQ,专门与Axon产品合作。 Axon 框架的程序遵循基于领域驱动设计(DDD)思想、命令查询职责分离 (CQRS)、事件驱动架构(Event Driven Architecture,EDA)的架构模式。这些原则的结合,使基于Axon的应用程序更加健壮、适应性更强。 阅读全文
posted @ 2021-08-19 21:32 Rickie 阅读(2194) 评论(0) 推荐(0) 编辑
摘要:COLA 是 Clean Object-Oriented and Layered Architecture的缩写,代表“整洁面向对象分层架构”,是来自阿里技术专家的开源项目。目前COLA已经发展到COLA 4.0。 COLA既是架构,也是框架。COLA框架继承了DDD的设计思想。 阅读全文
posted @ 2021-08-11 23:23 Rickie 阅读(1559) 评论(0) 推荐(0) 编辑
摘要:基于DDD领域建模思想、COLA开源架构和CQRS模式设计和构建货物运输系统技术专栏首先介绍了COLA框架的使用入门,以及与IDEA开发工具的集成等等;然后基于COLA架构,创建DDD经典示例项目-货物运输系统,详细介绍了DDD领域建模、适配层、应用层、领域层和基础设施层的代码开发、防腐层(ACL)设计与实现、领域事件(Domain Event)入门实践、以及基于Kafka消息中间件的消息发布和订阅等等。内容由浅入深,从开发实战出发,逐步掌握基于COLA架构和DDD领域建模思想构建复杂业务应用系统。 阅读全文
posted @ 2021-08-07 15:38 Rickie 阅读(842) 评论(0) 推荐(0) 编辑
摘要:在领域驱动架构中,通常会将查询和命令操作分开,我们称之为CQRS(命令查询职责分离Command Query Responsibility Segregation)。这张图是来自Martin Fowler大师的文章CQRS(https://www.martinfowler.com/bliki/CQRS.html)。 上图中读模块Query Model和写模块Command Model只是逻辑分离,物理层面还是使用了同一个数据库。我们可以进一步将数据库改成读库和写库做到物理分离,这时候就需要同步读写库。 阅读全文
posted @ 2021-08-01 13:24 Rickie 阅读(1039) 评论(0) 推荐(0) 编辑
摘要:COLA(Clean Object-oriented & Layered Architecture)架构是阿里团队自主研发的应用架构,目前已经开源( https://github.com/alibaba/COLA )。 在COLA的设计中,充分汲取了经典架构的优秀思想。除此之外,阿里补充了规范设计和扩展设计,并且使用Archetype的方式,将架构固化下来,以便可以快速地在开发中使用。 阅读全文
posted @ 2021-07-27 20:22 Rickie 阅读(1064) 评论(0) 推荐(0) 编辑
摘要:什么是Spring Cloud Alibaba? 是阿里巴巴结合自身微服务实践,开源的微服务全家桶。在Spring Cloud项目中孵化,2019年8月1日在Alibaba仓库发布了第一个毕业版本。在国内已逐渐成为Spring Cloud第二代的标准实现。在业界广泛使用,已有很多成功案例。 阅读全文
posted @ 2021-07-22 08:45 Rickie 阅读(1457) 评论(0) 推荐(0) 编辑
摘要:基于COLA架构(Clean Object-oriented and Layered Architecture,整洁面向对象分层架构)和DDD(Domain Driven Design,领域驱动设计)思想,我们初步完成了包裹预订服务的开发,包括包裹预订和包裹查询服务等等。接下来,继续进行DDD经典项目的开发工作。本文将创建运输微服务routingms,该服务负责与货物路线相关的所有操作,包括获取路线的行程、维护航线(Maintain Voyages)等等。 阅读全文
posted @ 2021-07-13 13:20 Rickie 阅读(761) 评论(1) 推荐(0) 编辑
摘要:在微服务(Microservices)架构实践中,架构设计借用了DDD中的一些概念和技术,比如一个微服务对应DDD中的一个限界上下文(Bounded Context);在微服务设计中应该首先识别出DDD中的聚合根(Aggregate Root);还有在微服务之间集成时采用DDD中的防腐层(Anti-Corruption Layer, ACL)。 本文介绍了防腐层相关的概念和应用场景。 阅读全文
posted @ 2021-07-10 11:26 Rickie 阅读(22552) 评论(1) 推荐(2) 编辑
摘要:CQRS(Command Query Responsibility Separation,命令查询职责分离)最早来自于Betrand Meyer(Eiffel语言之父,OCP提出者)提出的概念。其基本思想在于,任何一个对象的方法可以分为两大类: 命令(Command):不返回任何结果(void),但会改变对象的状态。 查询(Query):返回结果,但是不会改变对象的状态,对系统没有副作用。 阅读全文
posted @ 2021-07-04 11:34 Rickie 阅读(684) 评论(0) 推荐(0) 编辑
摘要:下图是2021 年 InfoQ 趋势报告:架构与设计,我们看看技术采用曲线图,可以分为5部分用户类型: 创新者(Innovators) 早期采用者(Early Adopters) 早期多数使用者(Early Majority) 晚期多数使用者(Late Majority) 后知后觉(图中没有显示的长尾部分) 阅读全文
posted @ 2021-06-30 11:04 Rickie 阅读(318) 评论(0) 推荐(0) 编辑
摘要:COLA 是 Clean Object-Oriented and Layered Architecture的缩写,代表“整洁面向对象分层架构”,是来自阿里技术专家的开源项目。目前COLA已经发展到COLA 4.0。 COLA既是框架,也是架构。COLA架构融合了常见的DDD代码模型,可以帮助开发人员快速实践并落地DDD领域建模的应用项目。 阅读全文
posted @ 2021-06-25 19:44 Rickie 阅读(2601) 评论(0) 推荐(1) 编辑

点击右上角即可分享
微信分享提示