话题研发模式 › DDD

研发模式:DDD

关联话题: 领域驱动设计、Domain Driven Design、Domain-Driven Design

DDD 学习与感悟 —— 向屎山冲锋

软件系统是通过软件开发来解决某一个业务领域或问题单元而产生的一个交付物。而通过软件设计可以帮助我们开发出更加健壮的软件系统。因此,软件设计是从业务领域到软件开发之间的桥梁。而DDD是软件设计中的其中一种思想,旨在提供一种大型复杂软件的设计思路和规范。通过DDD思想可以让我们的业务架构、系统架构、部署架构、数据架构、工程架构等都具备高扩展性、高维护性和高测试性。

DDD项目落地之充血模型实践

充血模型是DDD分层架构中实体设计的一种方案,可以使关注点聚焦于业务实现,可有效提升开发效率、提升可维护性。

DDD诊所——聚合过大综合症

“DDD诊所”是Thoughtworks DDD社区的一项活动,通过对同事们在实施DDD过程中遇到的问题进行分析和解答,共同提高开发水平。我们将其中一些典型案例整理成文供大家参考。之后也会考虑在适当的时候将这一形式对外部开放。

【实践篇】DDD脚手架及编码规范

我们团队一直在持续推进业务系统的体系化治理工作,在这个过程中我们沉淀了自己的DDD脚手架项目。脚手架项目是体系化治理过程中比较重要的一环,它的作用有两点:

  1. 可以对新建的项目进行统一的规范
  2. 对于指导老项目进行DDD的改造提供指导

本文主要是梳理和总结了DDD脚手架使用中的编码规范以及遇到的问题。

DDD架构为什么应该首选六边形架构?

本文介绍了传统分层架构及问题,采用依赖倒置和六边形架构解决方案。依赖倒置将资源库接口放在领域层,六边形架构实现应用程序边界划分。整洁架构进一步总结抽象了六边形架构,包括独立于框架等特点。采用这些原则可以构建可维护和扩展的软件系统。

关于聚合根、领域事件的那点事——深入浅出理解DDD

本文将通过简单的举例方式,深入浅出地介绍聚合根和领域事件,希望本文能够为读者提供有价值的知识和启发,帮助大家更好地理解和应用DDD的思想和方法。

DDD之于业务支撑的意义

本文基于工作经验,尝试谈谈对DDD的一些理解,希望能够更好地探寻学习DDD的意义。

DDD之业务系统搭建的设计思考

本文从一个具体的案例来分享,如何利用 DDD 思想去落地一个从 0 到 1 的业务系统。

最全的【DDD领域建模】小白学习手册

本文系统地讲解DDD到底是什么,解决了什么问题,及一些建议和实践。主要是思想的一种碰撞和分享,希望能对朋友们有所启发或帮助。

高德信息业务DDD实战 - 聊聊用领域重构胶水代码

‍‍‍本文主要记录了高德信息业务DDD实战中如何用领域重构胶水代码。

迄今为止最完整的DDD实践

对于一个架构师来说,在软件开发中如何降低系统复杂度是一个永恒的挑战。

手把手教你落地DDD

Archetype是Maven插件,可快速创建项目结构,提高代码质量和可维护性。ddd-archetype是基于DDD应用架构的Maven Archetype原型工程,可帮助快速创建脚手架,提升开发效率和项目结构的统一性。安装使用过程中需将本地的maven私服中的archetype-catalog.xml加入到catalogs中,选择本地archetype-catalog,并且选择ddd-archetype,填入项目信息并创建项目。本文提供了配套的代码案例,该案例使用DDD和本文的应用架构实现了简单的CMS系统,同时提供了后端和前端两个代码库,涉及DDD的概念有实体、值对象、聚合根、Factory、Repository、CQRS等。

领域驱动设计DDD|从入门到代码实践

作者将借鉴《实现领域驱动设计》的做法,介绍领域驱动设计的基本概念的同时,用一个虚拟的公司和一个虚拟的项目,把领域驱动设计进行落地实践。

DDD战略建模在重构业务系统时的实践

本文是作者结合2019年07月12日在ArchSummit全球架构师峰会DDD(领域驱动设计)落地探索专场做的主题分享:《DDD战略建模在重构业务系统中的实践》的内容整理而成。

一文揭秘DDD到底解决了什么问题

DDD作为架构设计思想帮助微服务控制规模复杂度,那它是怎么做到的呢?

降低复杂度提升效率,DDD在携程用车/租车订单系统重构中的实践

随着历史业务不断迭代和业务场景越来越复杂,携程用车、租车(简称两车)面临历史技术债和系统复杂度越来越高带来的理解、维护、迭代困难等问题,我们开始寻求如何更有效的降低复杂度和提升效率的方法。

本文描述了两车如何利用DDD(Domain-driven Design,领域驱动设计)方法论降低系统复杂度以及在重构历史系统中的取舍和思考。对于复杂业务场景下的领域驱动设计具有借鉴意义。。

首页 - Wiki
Copyright © 2011-2024 iteam. Current version is 2.123.1. UTC+08:00, 2024-03-29 15:36
浙ICP备14020137号-1 $访客地图$