`

DDD的感想

    博客分类:
  • DDD
阅读更多

      最近看了Eric Evans的DDD一书,有点感想,随便写一下。在DDD里一般把业务层分为应用服务处和领域模型层。应用服务是与具体的架构有关系的,而领域模型是独立与具体的架构的,是可以在不同的架构下移植的。就比如在EJB3.0中,我们的session bean,MDB等都可以做来实现应用服务层,而我们的业务核心可以放在领域模型层里,应用服务通过领域模型来实现具体的业务操作。 
      DDD中有实体,值对象,服务三种模型元素,有些对象我们需要跟踪它们的状态,那么就需要给它标识,这样它就是实体,有些对象我们不需要跟踪它的状态变化,它主要是用来描述系统状态的,那么就将它作为值对象,至于服务,也分为领域层服务和业务层服务,我们的业务逻辑是要放在领域层服务里,业务层的服务只是协调领域层的服务来完成业务操作。这样依赖我们的领域层通过实体,值对象,服务将是充血的。 
      至于到底是充血还是贫血,要从整个领域层来考虑,不能片面的从个别模型元素来看待贫血还是充血。有些实体从代码级别看是失血的,但是从整个领域层的角度来看是充血的,而所谓的设计模式也正是让领域层充血的法宝。

 

2
0
分享到:
评论

相关推荐

    DDD领域设计模式代码案例

    DDD(领域驱动设计)是一种软件开发方法,它强调以业务领域为中心进行系统设计,通过将复杂的业务逻辑转化为可理解的模型来提升软件质量。在Java环境下,DDD可以帮助开发者更好地理解和实现业务逻辑,提高代码的...

    DDD领域驱动设计学习框架简介PPT

    领域驱动设计(DDD)是一种软件开发方法,由Eric Evans在其同名著作《领域驱动设计》中提出。DDD致力于解决复杂业务系统的开发问题,通过将业务领域专家与开发人员紧密合作,将复杂的业务逻辑转化为可执行的软件模型...

    DDD分层架构参考代码目录结构

    《DDD分层架构及其在微服务中的应用》 DDD(Domain-Driven Design,领域驱动设计)是一种软件开发方法,强调以业务领域为中心进行系统设计。其分层架构模型是DDD的核心设计模式,它将系统分为用户接口层、应用层、...

    【推荐】DDD领域驱动设计&中台实践资料合集(20份).zip

    DDD领域驱动设计&中台实践资料合集,共20份。 DDD促进传统架构微服务转型 化繁为简--DDD驱动复杂业务软件架构的演进 基于FP的DDD实践 基于DDD的领域建模中的模版和工具实践 架构分层模型适配 金融支付系统的改造之...

    大白话领域驱动设计DDD视频教程

    第1章 初步了解DDD 课程介绍 抛开杂念,看看传统三层CRUD编程方式 DDD领域驱动设计到底是什么? DDD和传统三层优劣势比较 DDD在国内现象是个什么情况? DDD从战略设计到战术设计概览 第2章 领域分析模型 核心域,...

    领域驱动模型(DDD).zip_ddd_领域模型_领域驱动_领域驱动设计

    领域驱动设计(Domain-Driven Design,简称DDD)是一种软件开发方法,它强调通过深入理解和建模业务领域来驱动软件的设计和开发。DDD的核心思想是将复杂的业务逻辑转化为可操作的软件模型,以此来提高软件的可维护性...

    DDD领域驱动设计和中台实践资料合集25篇.zip

    DDD实战,领域驱动设计 DDD在旅游电商架构演进中的实践 Every Entity as A Microservice - 领域驱动设计DDD 分享我对领域驱动设计(DDD)的学习成果 化繁为简--DDD驱动复杂业务软件架构的演进 基于DDD的领域建模中的...

    ddd.rar_ddd_ddd linux_ddd manual_linux_linux ddd

    本压缩包文件“ddd.rar_ddd_ddd_linux_ddd_manual_linux_linux ddd”显然是ddd调试器在Linux平台上的相关资源,特别是其用户手册。 ddd的主要功能包括查看和修改内存,单步执行代码,设置断点,查看调用堆栈,以及...

    DDD 微服务落地实战视频教程

    《DDD 微服务落地实战视频教程》是一套全面解析领域驱动设计(Domain-Driven Design,简称DDD)在微服务架构中的应用的课程。这套教程共包含21个章节,旨在帮助学习者从理论基础到实战技能,逐步掌握如何在实际项目...

    ddd.rar_www.03ddd_www.DDD89.com

    标题中的"ddd.rar_www.03ddd_www.DDD89.com"表明这是一个压缩文件,可能包含了某个项目或资源的代码、文档等,而URL部分可能是发布者或来源的标识,但具体网址已无效。 描述中提到的是一个89S52微控制器与射频卡...

    DDD实战篇:分层架构的代码结构

    不同于其它的架构方法,领域驱动设计DDD(DomainDrivenDesign)提出了从业务设计到代码实现一致性的要求,不再对分析模型和实现模型进行区分。也就是说从代码的结构中我们可以直接理解业务的设计,命名得当的话,非...

    设计的秘密:DDD落地最佳实践与实战

    "设计的秘密:DDD落地最佳实践与实战" 本资源摘要信息主要关注Domain-driven design(DDD)的设计理念和实践,旨在帮助开发者更好地理解和应用DDD在软件开发中的重要性。 DDD的优势 DDD的主要目的是为了解决软件...

    DDD领域驱动设计&中台实践资料合集(20份).zip

    DDD领域驱动设计&中台实践资料(20份): DDD促进传统架构微服务转型(42页).pdf DDD在旅游电商架构演进中的实践(47页).pdf DDD实践中的那些坑(28页).pdf DDD的为与不为(25页).pdf Every Entity as A ...

    基于DDD和微服务中台架构与实现

    【基于DDD和微服务的中台架构与实现】是一本深度探讨现代企业IT架构的书籍,作者欧创新和邓頔结合实践经验,阐述了如何利用领域驱动设计(DDD)和微服务架构构建灵活且高效的中台系统。以下是该书涉及的主要知识点:...

    单纯的DDD代码

    **领域驱动设计(Domain-Driven Design,简称DDD)**是一种软件开发方法,它强调以业务领域为中心进行系统设计,将复杂的业务逻辑转化为清晰的模型。DDD的核心思想是将业务领域专家(Domain Experts)的知识转化为...

    最新领域驱动设计(DDD)资料合集(23份).zip

    最新领域驱动设计(DDD)资料合集,共23份。 金融支付系统的改造之路 化繁为简--DDD驱动复杂业务软件架构的演进 基于DDD的领域建模中的模版和工具实践 基于FP的DDD实践 架构分层模型适配 可视化的遗留系统微服务...

    linux下ddd工具的使用

    Linux操作系统中的DDD(Data Display Debugger)是一个图形化的调试器前端,它使用了LessTif或Motif用户界面工具包来提供交互式的调试环境。DDD的主要功能是帮助开发者调试C、C++、Java、Perl、Python等语言编写的...

    【推荐】张逸-DDD聚合工作坊

    【推荐】张逸-DDD聚合工作坊是一份深入探讨领域驱动设计(Domain-Driven Design,简称DDD)的专题资料,由知名专家张逸在IAS2019演讲中分享。这份29页的PDF文件是关于如何有效地运用DDD方法论进行软件开发的实践指导...

    ddd.rar_ddd474.com

    本资源"ddd.rar_ddd474.com"提供了一种实用的方法来解决这一问题,主要总结了三种常用的技术。下面我们将详细探讨这三种方法。 1. **使用公共静态变量**: 公共静态变量是一种简单直接的方式,可以在程序的不同...

    DDD调试器下载

    DDD(Debugger for X)是一款强大的、跨平台的源代码级调试器,专为那些寻求图形用户界面(GUI)以提高调试效率的开发者设计。DDD基于GNU的gdb、dbx等命令行调试器,提供了直观易用的可视化界面,使得调试C、C++、...

Global site tag (gtag.js) - Google Analytics