zl程序教程

DDD

  • DDD领域驱动设计实战(03)-深入理解实体

    DDD领域驱动设计实战(03)-深入理解实体

    1 前言 实体是领域模型中的领域对象。 官方解释:实体是指描述了领域中唯一的且可持续变化的抽象模型。通常建模时: 名词用于给概念命名形容词用于描述这些概念而动词则表示可以完成的操作 白话解

    日期 2023-10-26 10:13:59     
  • C#进阶系列——DDD领域驱动设计初探(一):聚合

    C#进阶系列——DDD领域驱动设计初探(一):聚合

    前言:又有差不多半个月没写点什么了,感觉这样很对不起自己似的。今天看到一篇博文里面写道:越是忙人越有时间写博客。呵呵,似乎有点道理,博主为了证明自己也是忙人,这不就来学习下DDD这么一个听上去高大上的东西。前面介绍了下MEF和AOP的相关知识,后面打算分享Automapper、仓储模式、WCF等东西的,可是每次准备动手写点什么的时候,就被要写的Demo难住了,比如仓储模式,使用过它的朋友应该知道

    日期 2023-10-26 10:13:59     
  • 十年开发老司机,感悟DDD领域驱动设计的战略设计到底是什么?

    十年开发老司机,感悟DDD领域驱动设计的战略设计到底是什么?

    模型设计,DDD 分两阶段,战略设计和战术设计。 战略设计 战略设计的子域、限界上下文和上下文映射图等概念大致分为: 业务划分 以区分不同业务,即划分识别出来的业

    日期 2023-10-26 10:13:59     
  • 设计模式:DDD领域驱动设计

    设计模式:DDD领域驱动设计

    领域 Domain-driven design DDD 强调是说得先把 “领域” 中涉及到的数据、流程、规则等都弄明白了,然后以面向对象的观点为其建立一个模型(即领域模型)

    日期 2023-10-26 10:13:59     
  • 拥抱毒瘤 DDD!

    拥抱毒瘤 DDD!

    这几年不知道怎么了,互联网从业者们总喜欢造一些奇奇怪怪的新词。 比如顶部不叫顶部,叫头部; 比如需求不叫需求,叫痛点; 比如切入点不叫切入点

    日期 2023-10-26 10:13:59     
  • 【DDD】

    【DDD】

    面向对象从名词开始,DDD从动词开始

    日期 2023-10-26 10:13:59     
  • 大白话DDD(DDD黑话终结者)

    大白话DDD(DDD黑话终结者)

    一、吐槽的话 相信听过DDD的人有很大一部分都不知道这玩意具体是干嘛的,甚至觉得它有那么一些虚无缥缈。原因之一是但凡讲DDD的,都是一堆特别高大上的概念,然后冠之以一堆让人看不懂的解释,。作者曾经在极客时间上买了本DDD实战的电子书,被那些概念一路从头灌到尾,灌得作者头昏

    日期 2023-10-26 10:13:59     
  • 领域驱动设计(Domain-Driven Design, DDD)

    领域驱动设计(Domain-Driven Design, DDD)

    领域驱动设计(Domain Driven Design,简称DDD)是一种面向对象软件开发方法,它强调将软件系统的设计和实现过程与业务领域紧密结合,通过深

    日期 2023-10-26 10:13:59     
  • SocialGoal - ASP.NET MVC 5, EF 6 Code First, AutoMapper, Autofac, TDD and DDD Sample Site

    SocialGoal - ASP.NET MVC 5, EF 6 Code First, AutoMapper, Autofac, TDD and DDD Sample Site

    https://channel9.msdn.com/coding4fun/blog/SocialGoal-ASPNET-MVC-5-EF-6-Code-First-AutoMapper-Autofac-TDD-and-DDD-Sample-Site?utm_source=tuicool&utm_medium=referral

    日期 2023-10-26 10:13:59     
  • DDD领域驱动设计实战(六)-理解领域事件(Domain Event)

    DDD领域驱动设计实战(六)-理解领域事件(Domain Event)

    如何将领域事件建模成对象,何时应该为领域事件创建唯一的身份标识?哪些组件用于发布事件,哪些组件用于订阅事件为什么我们需要一个事件存储?如何实现事件存储、如何使用事件存储?如何通过不同的方式将领域事

    日期 2023-10-26 10:13:59     
  • DDD领域驱动实战(二)-限界上下文(bounded context)

    DDD领域驱动实战(二)-限界上下文(bounded context)

    1 前言 "First, a Bounded Contextis a semantic contextual boundary. Thismeans that within the boundary each

    日期 2023-10-26 10:13:59     
  • DDD-领域驱动设计

    DDD-领域驱动设计

    识别领域事件 DDD战术篇:领域模型的应用 DDD战略篇:架构设计的响应力 DDD实战篇:分层架构的代码结构  

    日期 2023-10-26 10:13:59     
  • 都在聊 DDD,到底哪里超越了MVC?

    都在聊 DDD,到底哪里超越了MVC?

    来源:juejin.cn/post/6917125801460629518 前言 要想深入掌握和了解 DDD 领域驱动设计的核心,那无论如何也绕不开两大较为抽象的概念——“贫血模型”、“充血模型”: 贫血模型即事务脚本模式。 充血模型即领域模型模式。 贫血模型 贫血模型最早广泛应用源于EJB2,最强盛时期则是由Spring创造,将: “行为”(逻辑、过程); “状态”(数据,对应到语言就是

    日期 2023-10-26 10:13:59     
  • 案例教你一步步设计DDD微服务项目

    案例教你一步步设计DDD微服务项目

    1 功能描述 请假人填写请假单提交审批,根据请假人身份、请假类型和请假天数进行校验,根据审批规则逐级递交上级审批,逐级核批通过则完成审批,否则审批不通过退回申请人。根

    日期 2023-10-26 10:13:59     
  • DDD 在京东 DevOps 项目协作领域的落地实战

    DDD 在京东 DevOps 项目协作领域的落地实战

    前言 DDD 即领域驱动设计(Domain-Driven Design)。它来源于著名建模专家 Eric Evans 发表的非常具有影响力的书籍:《domain-driven design –t

    日期 2023-10-26 10:13:59     
  • DDD领域驱动设计实战(六)-领域服务

    DDD领域驱动设计实战(六)-领域服务

    领域中的服务表示一个无状态的操作,它用于实现特定于某个领域的任务。 当某个操作不适合放在聚合和值对象上时,最好的方式便是使用领域服务。有时我们倾向于使用聚合根上的静态方法来实现这些这些操作

    日期 2023-10-26 10:13:59     
  • 浅析DDD(领域驱动设计)

    浅析DDD(领域驱动设计)

    转载:https://www.jianshu.com/p/b6ec06d6b594

    日期 2023-10-26 10:13:59     
  • 谈DDD领域驱动设计和建模

    谈DDD领域驱动设计和建模

      作者:人月神话,新浪博客同名 简介:多年SOA规划建设,私有云PaaS平台架构设计经验,长期从事一线项目实践 今天谈下领域驱动设计方面的内容,其中部分内容来源于《领域驱动设计:软件核心复杂性应对之道》书籍的读书笔记整理。   我前面谈了很多关于中台,SOA和微服务的文章,实际上你可以看到中台层对外和对前台提供的服务更多就应该是粗粒度的领域服务能力,如果中台最

    日期 2023-10-26 10:13:59     
  • DDD领域驱动设计实战(四)-值对象

    DDD领域驱动设计实战(四)-值对象

    0 前言 值对象也是领域模型中的领域对象。 应尽量使用值对象建模而非实体。即便一个领域概念必须建模成实体,在设计阶段也应更偏向于将其作为值对象。因为更容易创建、测试、使用、优化和维护。 1 为什么使用值对

    日期 2023-10-26 10:13:59     
  • DDD领域驱动设计实战-微服务架构演进的关键:边界

    DDD领域驱动设计实战-微服务架构演进的关键:边界

    微服务的设计要涉及到逻辑边界、物理边界和代码边界等。 演进式架构 很多人认为:“将单体拆分成多少个微服务,是微服务的设计重点。” 真的吗?并非如此! Martin

    日期 2023-10-26 10:13:59     
  • 一文解读DDD (转)

    一文解读DDD (转)

    从遇到问题开始 当人们要做一个软件系统时,一般总是因为遇到了什么问题,然后希望通过一个软件系统来解决。 比如,我是一家企业,然后我觉得我现在线下销售自己的产品还不够,我希望能够在线上也能销售自己的产品。所以,自然而然就想到要做一个普通电商系统,用于实现在线销售自己企业产品的目的。 再比如,我是一家互联网公司,公司有很多系统对外提供服务,面向很多客户端设备。但是最近由于各种原因,导致服务经常出故障

    日期 2023-10-26 10:13:59     
  • 领域驱动设计(DDD:Domain-Driven Design) 介绍

    领域驱动设计(DDD:Domain-Driven Design) 介绍

    Eric Evans的“Domain-Driven Design领域驱动设计”简称DDD,Evans DDD是一套综合软件系统分析和设计的面向对象建模方法,本站Jdon.com是国内公开最早讨论DDD网站之一,可订阅DDD专题。初学者学习DDD可从研究本站Jdon框架的DDD应用源码开始,戳这里开始。   过去系统分析和系统设计都是分离的,正如我们国家“系统分析师” 和“系统设计师” 两种职称考

    日期 2023-10-26 10:13:59     
  • DDD领域驱动设计实战-服务和数据在微服务各层协作的最佳实践

    DDD领域驱动设计实战-服务和数据在微服务各层协作的最佳实践

    1 服务协作 1.1 服务的类型 按分层架构设计出的微服务,其内部各层服务主要功能和职责如下: 1.1.1 Facade服务 位于用户接口层,包括接口和实现两部分。用于处理用

    日期 2023-10-26 10:13:59     
  • 【DDD领域设计】ddd架构的代码结构最佳实践

    【DDD领域设计】ddd架构的代码结构最佳实践

     ddd理论很完美,然而写出完整的遵循ddd理论的代码,并不是一件容易的事情,代码结构、命名、组织等等,细微之处见真功夫。。。     https://app.diagrams.net/#Hjunneyang%2Fxxproject%2Fmaster%2Fddd_arch.drawio.png 

    日期 2023-10-26 10:13:59     
  • DDD领域驱动设计-充血模型和贫血模型

    DDD领域驱动设计-充血模型和贫血模型

    贫血模型 最早广泛应用源于EJB2,最强盛时期则是由Spring创造,把 “行为”(逻辑、过程) “状态”(数据,对应到语言就是对象成员变量) 分离到不同的对象中: 只有状态的对象就是所谓的“贫血对象”(常称为VO——Value Object) 只有行为的对象就是我们常见的N层结构中的Logic/Service/Manager层(对应到EJB2中的Stateless Session

    日期 2023-10-26 10:13:59     
  • DDD领域驱动设计实战(09)- 核心域和精炼

    DDD领域驱动设计实战(09)- 核心域和精炼

    1 领域 用以确定边界。 DDD按规则细分业务领域,细分到一定程度,DDD会将问题范围限定在特定边界,在该边界内建立领域模型,进而用代码实现该领域模型,

    日期 2023-10-26 10:13:59     
  • 开源DDD设计模式框架YMNNetCoreFrameWork第一篇

    开源DDD设计模式框架YMNNetCoreFrameWork第一篇

     DDD设计模式:仓储、领域模型、应用层、聚合根、事件总线,以业务模型驱动设计,从数据模型驱动脱离,不用关心数据库设计,开发效率更高  DDD领域驱动设计模型概念不再讲解,直接上技术 框架搭建:     如图所示, Host是程序的路口,用来配置项目的 Application,是应用层,为用户提供接口 Core,领域模型层 EntityFrameWork

    日期 2023-10-26 10:13:59     
  • C#进阶系列——DDD领域驱动设计初探(四):WCF搭建

    C#进阶系列——DDD领域驱动设计初探(四):WCF搭建

    前言:前面三篇分享了下DDD里面的两个主要特性:聚合和仓储。领域层的搭建基本完成,当然还涉及到领域事件和领域服务的部分,后面再项目搭建的过程中慢慢引入,博主的思路是先将整个架构走通,然后一步一步来添加相关元素,使架构慢慢变得丰满。这篇打算分享下应用层的搭建。根据DDD的设计原则,应用层不包含任何领域逻辑,它主要的作用是协调任务,或者叫调度任务,维护应用程序状态。根据博主的理解,应用层是用来隔离领

    日期 2023-10-26 10:13:59     
  • DDD领域驱动设计实战-分层架构及代码目录结构

    DDD领域驱动设计实战-分层架构及代码目录结构

    代码结构 DDD并没有给出标准的代码模型,不同的人可能会有不同理解。 按DDD分层架构的分层职责定义,在代码模型里分别为用户接口层、应用层、领域层和基础层,建立了 interfac

    日期 2023-10-26 10:13:59     
  • 分层架构设计模式总结-MVC,洋葱架构,整洁架构,六边形架构,DDD等等

    分层架构设计模式总结-MVC,洋葱架构,整洁架构,六边形架构,DDD等等

    一、单层结构不分层 最开始开发项目时,由于需求较少,用一个单独的工程文件就可以满足开发的需求了,不需要进行划分。 二、MVC 分层和三层 到后面需求越来越多,于是就把文件进行分解,怎么分解?有人提出了 MVC 的分层方式。 MVC 分层是一个 3 层结构,将整个应用划分为: M:model 模型层,用于封装应用业务逻辑相关数据和对数据处理方法。 V:view 表现层,把数据展示给用户。 C:c

    日期 2023-10-26 10:13:59     
  • 090614 T DDD与591jj

    090614 T DDD与591jj

    读了《DDDQ》的Service后,发现其理论与当初(大概200808-200812)设计591jj架构时的service竟不谋而合!其讲解简直就是591jj中service的全面解释!DDDQ的主要内容第三章MDD,其所述知识,竟也和《PEAA》中的ORM理论大同小异。 读了《DDDQ》的Service后,发现其理论与当初(大概200808-200812)设计591jj架构时的servic

    日期 2023-10-26 10:13:59     
  • 分层架构之DDD分层

    分层架构之DDD分层

    DDD(Domain Driven Design,领域驱动设计)作为一种软件开发方法,它可以帮助我们设计高质量的软件模型。在正确实现的情况下,我们通过DDD完成的设计恰恰就是软件的工作方式。UL(Ubiquitous Language,通用语言)是团队共享的语言,是DDD中最具威力的特性之一。不管你在团队中的角色如何,只要你是团队的一员,你都将使用UL。由于UL的重要性,所以需要让每个概念在各自

    日期 2023-10-26 10:13:59     
  • C#进阶系列——DDD领域驱动设计初探(六):领域服务

    C#进阶系列——DDD领域驱动设计初探(六):领域服务

    前言:之前一直在搭建项目架构的代码,有点偏离我们的主题(DDD)了,这篇我们继续来聊聊DDD里面另一个比较重要的知识点:领域服务。关于领域服务的使用,书中也介绍得比较晦涩,在此就根据博主自己的理解谈谈这个知识点的使用。 DDD领域驱动设计初探系列文章: C#进阶系列——DDD领域驱动设计初探(一):聚合 C#进阶系列——DDD领域驱动设计初探(二):仓储Repository(上) C#进阶系列

    日期 2023-10-26 10:13:59     
  • 贫血模型;DTO:数据传输对象(Data Transfer Object);AutoMapper ;Domain Model(领域模型);DDD(领域驱动设计)

    贫血模型;DTO:数据传输对象(Data Transfer Object);AutoMapper ;Domain Model(领域模型);DDD(领域驱动设计)

    ====================== 我自己的理解 ========================== 一:  DTO  我自己的理解,就是 比如你有一个类,跟数据库的table表结构一模一样,主键外键什么的都有,但是这个 model类,你返回数据到 UI层的时候,有些数据是不用的,你就得自己new一个新类出来,新的类从旧的类里面拿值,然后给别人用的就是新的类别,有

    日期 2023-10-26 10:13:59     
  • C#进阶系列——DDD领域驱动设计初探(五):AutoMapper使用

    C#进阶系列——DDD领域驱动设计初探(五):AutoMapper使用

    前言:前篇搭建了下WCF的代码,就提到了DTO的概念,对于为什么要有这么一个DTO的对象,上章可能对于这点不太详尽,在此不厌其烦再来提提它的作用: 从安全上面考虑,领域Model都带有领域业务,让Client端引用Domain Model就意味着Client端可以绕过应用层直接完成业务逻辑的调用,这样是一种不安全的机制。 从对象传递效率上面考虑,领域Model带有业务,而这些业务一般对于UI层

    日期 2023-10-26 10:13:59     
  • DDD概述

    DDD概述

    程序设计语言指导怎样把设计更好地落地各种编程范式指导可以用什么样的元素去做设计设计原则与模式指导如何组合分解出来的各个元素 分解组合的东西是从哪来? 需要你对设计方法有一个基本的认知,

    日期 2023-10-26 10:13:59     
  • DDD为什么能火起来?和微服务有啥关系?

    DDD为什么能火起来?和微服务有啥关系?

    作者:等不到的口琴 链接:www.cnblogs.com/Courage129/p/14839544.html DDD为什么能火起来? 我们先不讨论DDD的定义, 先梳理一下DDD火起来的背景, 根据我学习的套路, 永远是为什么为先,再是解决什么问题,是什么东西, 最后如何使用。 我们都知道这些年随着设备以及技术的发展,软件架构发生了很多变化,从最初的单机(BS/CS)架构到后面的集中式架构,再

    日期 2023-10-26 10:13:59     
  • 面试官:谈谈你对领域模型设计(DDD)的理解和心得

    面试官:谈谈你对领域模型设计(DDD)的理解和心得

    文章目录 一、业务开发的职责 业务在实际开展中遇到的问题 软件复杂度 二、DDD的本质是什么 1、领域复杂度 2、技术实现的复杂性 三、复杂度处理-

    日期 2023-10-26 10:13:59     
  • C#进阶系列——DDD领域驱动设计初探(二):仓储Repository(上)

    C#进阶系列——DDD领域驱动设计初探(二):仓储Repository(上)

    前言:上篇介绍了DDD设计Demo里面的聚合划分以及实体和聚合根的设计,这章继续来说说DDD里面最具争议的话题之一的仓储Repository,为什么Repository会有这么大的争议,博主认为主要原因无非以下两点:一是Repository的真实意图没有理解清楚,导致设计的紊乱,随着项目的横向和纵向扩展,到最后越来越难维护;二是赶时髦的为了“模式”而“模式”,仓储并非适用于所有项目,这就像没有任

    日期 2023-10-26 10:13:59     
  • ‘\ddd‘转义字符与八进制转换

    ‘\ddd‘转义字符与八进制转换

    所有的ASCII码都可以用“\”加数字(一般是8进制数字)来表示。而C中定义了一些字母前加"\"来表示常见的那些不能显示的ASCII字符,如\0,\t,\n等,就称为转义字符,因为后面的字符,都不是它本来的ASCII字符意思了。 ——以上来自百度

    日期 2023-10-26 10:13:59     
  • DDD战略篇:架构设计的响应力

    DDD战略篇:架构设计的响应力

    当敏捷宣言的17位签署者在2001年喊出“响应变化胜于遵循计划”这样的口号时,鲜有组织会真正把这句话当回事儿,甚至很多经验丰富的管理者会认为好的计划是成功的一半,遵循计划就是另外一半。然而在时下的第四次工业革命浪潮中,可能很多管理者已经不会简单满足于“响应”,而是选择主动发起变化了。不确定性管理成了这个时代的主旋律,企业的响应力成了成败的关键。 随着这种趋势的深入,架构设计这个技术管理领域也被推

    日期 2023-10-26 10:13:59     
  • DDD领域驱动设计实战-聚合(Aggregate)和聚合根(AggregateRoot)

    DDD领域驱动设计实战-聚合(Aggregate)和聚合根(AggregateRoot)

    实体(Entity)和值对象(ValueObject)组成聚合(Aggregate),再根据业务将多个聚合划定到同一限界上下文(Bounde

    日期 2023-10-26 10:13:59     
  • 如何构建基于 DDD 领域驱动的微服务?

    如何构建基于 DDD 领域驱动的微服务?

    尽管微服务中的“微”一词表示服务的规模,但它并不是使用微服务的唯一标准。当团队转向基于微服务的架构时,他们旨在提高敏捷性以及自主且频繁地部署功能。很难确定这种架构风格的简单定义。我喜欢Adrian Cockcroft的关于微服务的简短定义: “ 面向服务的体系结构,它由松散耦合的、具有上下文边界的元素组成。” 尽管这定义了高级设计启发式技术,但微服务架构具有一些独特的特性,使其有别于以往的面向服

    日期 2023-10-26 10:13:59     
  • DDD CQRS架构和传统架构的优缺点比较

    DDD CQRS架构和传统架构的优缺点比较

    最近几年,在DDD的领域,我们经常会看到CQRS架构的概念。我个人也写了一个ENode框架,专门用来实现这个架构。CQRS架构本身的思想其实非常简单,就是读写分离。是一个很好理解的思想。就像我们用MySQL数据库的主备,数据写到主,然后查询从备来查,主备数据的同步由MySQL数据库自己负责,这是一种数据库层面的读写分离。关于CQRS架构的介绍其实已经非常多了,大家可以自行百度或google。我今天

    日期 2023-10-26 10:13:59     
  • 什么是DDD

    什么是DDD

    1 DDD是什么? DDD是领域驱动设计,是Eric Evans于2003年提出的,离现在有17年。 2 为什么需要DDD 当软件越来越复杂,实际开发中,大量的业务逻辑堆积在一个巨型类中的例子屡见不鲜,代码的复用性和扩展性无法得到保证。为了解决这样的问题,DDD提出了清晰的分层架构和领域对象的概念,让面向对象的分析和设计进入了一个新的阶段,对企业级软件开发起到了巨大的推动作用。 2.1 POP,

    日期 2023-10-26 10:13:59     
  • C#进阶系列——DDD领域驱动设计初探(七):Web层的搭建

    C#进阶系列——DDD领域驱动设计初探(七):Web层的搭建

    前言:好久没更新博客了,每天被该死的业务缠身,今天正好一个模块完成了,继续来完善我们的代码。之前的六篇完成了领域层、应用层、以及基础结构层的部分代码,这篇打算搭建下UI层的代码。 DDD领域驱动设计初探系列文章: C#进阶系列——DDD领域驱动设计初探(一):聚合 C#进阶系列——DDD领域驱动设计初探(二):仓储Repository(上) C#进阶系列——DDD领域驱动设计初探(三):仓储R

    日期 2023-10-26 10:13:59     
  • 跨越DDD从理论到工程落地的鸿沟

    跨越DDD从理论到工程落地的鸿沟

    摘要:本文从DDD的核心概念讲起,重点放在如何把理论落地成代码,期望给那些正在探索DDD的同学一些指引和启发。 本文分享自华为云社区《跨越DDD从理论到工程落地的鸿沟》,作者:敏捷小智。 DDD作为一种优秀的设计思想,的确为复杂业务治理带来了曙光。然而又因为DDD本身难以掌握,很容易造成DDD从理论到工程落地之间出现巨大的鸿沟。就像电影里面的桥段,只谈DDD理论姿势很优美,一旦工程落地就跪了..

    日期 2023-10-26 10:13:59     
  • 领域驱动设计(DDD)

    领域驱动设计(DDD)

    领域驱动设计(简称 ddd)概念来源于2004年著名建模专家eric evans发表的他最具影响力的书籍:《domain-driven design –tackling complexity in the heart of software》(中文译名:领域驱动设计—软件核心复杂性应对之道)一书。,书中提出了“领域驱动设计(简称 ddd)”的概念。     

    日期 2023-10-26 10:13:59     
  • 云原生时代,领域驱动设计思想(DDD)如何落地?

    云原生时代,领域驱动设计思想(DDD)如何落地?

    摘要:随着数字化世界的持续演进,软件架构设计思想在碰撞中不断优化。云原生时代的到来,加速了行业对于领域驱动设计理念(Domain-Driven Design)的实践落地诉求。 本文分享自华为云社区《云原生时代,领域驱动设计思想(DDD)如何落地?》,作者:敏捷的小智 。 随着数字化世界的持续演进,软件架构设计思想在碰撞中不断优化。云原生时代的到来,加速了行业对于领域驱动设计理念(Domain-D

    日期 2023-10-26 10:13:59     
  • DDD领域驱动设计实战电商活动中心重构

    DDD领域驱动设计实战电商活动中心重构

    现实的业务,非常复杂。即使同一事物,在多个业务下意义可能完全不同。比如【商品】: 在商品详情页语境指【商品基本信息】在下单页语境指【购买项】在物流页面语境又是【被运送的货物】 D

    日期 2023-10-26 10:13:59