zl程序教程

领域驱动设计-上

  • 读完《实现领域驱动设计》的四点思考

    读完《实现领域驱动设计》的四点思考

    本文是一篇技术文,结合《实现领域驱动设计》和以往的系统开发经验,重点解释了业务分析过程中的领域,子域,命令模型和查询模型几个概念。适合有一定经验的软件开发者和产品经理阅读。相关概念理解,如有不妥,欢迎指正交流。一 转变开发者思维方式 面向领域的驱动设计,简称 DDD ,下文中用 DDD替代基于纯粹属性的思考是以数据为中心的数据模型,以属性为中心,关注的是数据的存储,层次之间的传递方式。以行为事件思

    日期 2023-06-12 10:48:40     
  • 国外经典神作:领域驱动设计软件核心复杂性应对之道手册限时阅读

    国外经典神作:领域驱动设计软件核心复杂性应对之道手册限时阅读

    相信领域驱动设计这个对有些小伙伴来说很陌生,领域驱动设计(Domain Driven Design,DDD)自诞生以来已有十几年时间,这门本已步入老年的方法学却因为微服务的兴起而焕发了第二春。并不是微服务拯救了领域驱动设计,是因为领域驱动设计一直在坚硬的生长,然而看起来,确乎因为微服务,领域驱动设计才又焕发了青春。今天给大家介绍的这本书是有国外大神Eric Evans所著的,堪称最为经典“领域驱动

    日期 2023-06-12 10:48:40     
  • DDD洋葱架构才是 yyds!阿里大牛手记(DDD)领域驱动设计应对之道

    DDD洋葱架构才是 yyds!阿里大牛手记(DDD)领域驱动设计应对之道

    虽然身为架构师,设计一个高质量的架构依然是复杂与困难的。简单来说,动用大量的资源只为了一套优质的三高架构并不正确,而是该在了解当前业务现状的情况下,创造出灵活、可维护、健硕能成长的。就拿近两年程序员行业饱受争议的DDD(领域驱动设计)来说,事实上,领域驱动设计的思维可以很好的解决企业的大型架构所遇到的绝大部分难题(理论层面至少是这样),例如上下映射,就可以在本质上把业务的架构模块解耦,最高程度做到

    日期 2023-06-12 10:48:40     
  • [答疑]《实现领域驱动设计》的译者其实没错?(二)

    [答疑]《实现领域驱动设计》的译者其实没错?(二)

    [答疑]《实现领域驱动设计》的译者其实没错?(一)>>(4)原文:If so, is there some practical limit to the number of objects that should be allowed to reside in the graph?中译本译文:如果是这样,对于存在于这个树中的对象有没有一个实用的数目限制?我的剖析:这句的问题,主要还是之

    日期 2023-06-12 10:48:40     
  • 幻灯片03-剔除“伪创新” 的领域驱动设计-领域建模结构部分Part2

    幻灯片03-剔除“伪创新” 的领域驱动设计-领域建模结构部分Part2

    DDD领域驱动设计批评文集>>《软件方法》强化自测题集>>《软件方法》各章合集>>pdf文件下载:http://umlchina.com/training/umlchina_ddd_02_domainmodeling_structure.pdf[推荐升级]23套UML+EA和StarUML的建模示范视频-全程字幕(2022.6.1更新)7月7-10晚网课:软件需

    日期 2023-06-12 10:48:40     
  • 幻灯片02-剔除“伪创新” 的领域驱动设计-领域建模结构部分Part1

    幻灯片02-剔除“伪创新” 的领域驱动设计-领域建模结构部分Part1

    DDD领域驱动设计批评文集>>《软件方法》强化自测题集>>《软件方法》各章合集>>pdf文件下载:http://umlchina.com/training/umlchina_ddd_02_domainmodeling_structure.pdf[推荐升级]23套UML+EA和StarUML的建模示范视频-全程字幕(2022.6.1更新)6月23-26晚剔除“伪创

    日期 2023-06-12 10:48:40     
  • DDD领域驱动设计落地实践系列:初识DDD

    DDD领域驱动设计落地实践系列:初识DDD

    引言 笔者在经历的很多项目中都使用了DDD领域驱动设计进行架构设计,尤其是在业务梳理、中台规划以及微服务划分等方面,DDD是重要的架构设计方法论,对平时的架构设计有非常好的指导作用。从本文开始笔者将通过一系列的文章阐述自己对于DDD的理解以及如何在项目实战中落地实践DDD。本文作为系列文章的开端,主要和大家聊聊DDD的一些基本概念以及使用背景。DDD到底是何方神圣?软件设计方式

    日期 2023-06-12 10:48:40     
  • DDD领域驱动设计落地实践:微服务拆分之道

    DDD领域驱动设计落地实践:微服务拆分之道

    引言在前面的两篇文章中,笔者给大家介绍了DDD核心思想、重要概念以及如何进行DDD进行微服务实践的大致过程,后续的文章中将逐渐深入DDD的实践细节,包括领域模型与代码模型的映射以及具体的微服务设计实例等。当下微服务盛行,微服务架构解决了单点系统的可用性问题、突破单节点服务的性能瓶颈同时提升了整个系统的稳定性。因此各大公司纷纷转向微服务架构,但是在实际的微服务拆分过程中也会遇到不少的问题。而DDD中

    日期 2023-06-12 10:48:40     
  • 领域驱动设计对依赖的控制

    领域驱动设计对依赖的控制

    我在《解构领域驱动设计》一书中分析了软件复杂度的成因,一曰规模,一曰结构,还有一个则是变化的影响。规模与结构存在一定的矛盾关系:解决规模复杂度的有效方法为“分而治之”,一旦系统被分解为多个更为细小的软件元素,结构复杂度就会增加。结构与变化之间存在互相影响的关系:如果结构控制不合理,变化带来的影响就会更强,使得系统更加复杂。认真分析结构和变化对系统复杂度的影响,一个关键是对依赖的控制。当我们对系统进

    日期 2023-06-12 10:48:40     
  • 《解构领域驱动设计》第一次勘误

    《解构领域驱动设计》第一次勘误

    本以为经过四年的精心打磨,又经过多次审校,本书的错误数能够降到空前的最低,没想到书一经出版,就陆续收到书友发现的书中谬误。许多谬误实在低级,让我脸红。除了少数是文字错误外,有好几处都是代码中的低级错误。只怪我当初审校时,将太多精力放在文字内容上,忽略了对代码片段的认真检查。 趁着这次出版社的重印,赶紧订正了书友发现的这些错误。让我感到惭愧的是,在公众号总结这些勘误时,发现仍有极少量错误未能在这次重

    日期 2023-06-12 10:48:40     
  • 领域驱动设计随感录

    领域驱动设计随感录

    本文内容来自我发表在知识星球[NoDDD]中的一些片段感想,随手而记,记录思想片段,皆是针对领域驱动设计的感悟,因为不成体系,故而名为随感录。1有时候在技术上确定限界上下文的边界反而是一件容易的事,不过就是按照DDD的设计思想依势而为罢了。虽然有by experience的因素,然则好歹是架构师可以掌控的。真正难以控制边界的,其实是团队的边界和思维的边界。要让团队成员能够放开自己的利己主义思想,愿

    日期 2023-06-12 10:48:40     
  • 系统重构的智慧:用领域驱动设计的方法驱动系统重构 | TVP十日谈预告

    系统重构的智慧:用领域驱动设计的方法驱动系统重构 | TVP十日谈预告

    硬核分享简介10.29丨《用领域驱动设计驱动系统重构》 硬核大咖:李智慧 同程艺龙 交通首席架构师硬核简介:为什么互联网应用越是发展到成熟阶段,需求变更越是困难,开发周期越是变长?为什么系统功能似乎没有增加多少,但是代码却变得越来越庞大?如果系统重构是不可避免的,应该用什么样的设计思想和方法来引导我们进行系统重构。《用领域驱动设计驱动系统重构》通过一个交通出行互联网应用的重构案例,展示随着功能不断

    日期 2023-06-12 10:48:40     
  • 领域驱动设计-什么是领域驱动设计和怎么使用它

    领域驱动设计-什么是领域驱动设计和怎么使用它

    原文链接 进一步扩展前面我们讨论的面向对象分析和设计(OOAD),这篇文章讨论领域驱动设计(DDD),DDD是建立在面向对象分析设计上开发软件的一种方法。 通过这篇文章我们解释什么是领域驱动设计,在现代开发周期中如何实现,使用DDD的优点和缺点。 什么是领域 定义DDD之前我们首先必须要说明在开发中 领域 的含义。领域在字典中的解释是:“活动或者知识的范围”,更深层次的来讲,软件工程中

    日期 2023-06-12 10:48:40     
  • 【华为云技术分享】如何设计高质量软件-领域驱动设计DDD(Domain-Driven Design)学习心得

    【华为云技术分享】如何设计高质量软件-领域驱动设计DDD(Domain-Driven Design)学习心得

    DDD做为软件设计方法于2004年提出,一直不温不火,最近几年突然火起来了,为啥呢?正所谓机会给有准备的人,因为微服务的流行,大家都跃跃欲试把传统单体软件转成微服务架构,但理论很丰满,现实很骨感,光是分解微服务就让人找不到北,而DDD是歪打正着也好,富有远见也好,正好适合微服务转型设计,不火都难。 最近学

    日期 2023-06-12 10:48:40     
  • C#/.NET Core跨平台分布式微服务/DDD领域驱动架构设计VIP实战

    C#/.NET Core跨平台分布式微服务/DDD领域驱动架构设计VIP实战

    阿笨NET课程详情 腾讯课堂官网  https://abennet.ke.qq.com/ 【报名请咨询老师扣扣:422159763】  

    日期 2023-06-12 10:48:40     
  • 万字长文助你上手软件领域驱动设计 DDD

    万字长文助你上手软件领域驱动设计 DDD

    最近看了一本书《解构-领域驱动设计》,书中提出了领域驱动设计统一过程(DDDRUP),它指明了实践 DDD 的具体步骤,并很好地串联了各种概念、模式和思想。因此,我对书本内容做了梳理、简化,融入自己的理解,并结合之前阅读的书籍以及实践经验,最终形成这篇文章。希望可以帮助大伙理顺 DDD 的各种概念、模式和思想,降低上手 DDD 的门槛。 1.背景 领域驱动设计(DDD)由 Eric Eva

    日期 2023-06-12 10:48:40     
  • 关于DDD领域驱动设计的理论知识收集汇总

    关于DDD领域驱动设计的理论知识收集汇总

    最近一直在学习领域驱动设计(DDD)的理论知识,从网上搜集了一些个人认为比较有价值的东西,贴出来和大家分享一下: 我一直觉得不要盲目相信权威,比如不能一谈起领域驱动设计,就一定认为国外的那个Eric Evans写的那本书中的一些概念就一定是正确的,认为领域驱动设计就一定是聚合,聚合根,实体,值对象等概念。我们要有自己的思想,要有自己判断真正的领域模型该是什么样子的勇气和追求。 "领域驱动设计"

    日期 2023-06-12 10:48:40     
  • 领域驱动设计(DDD)部分核心概念的个人理解

    领域驱动设计(DDD)部分核心概念的个人理解

    领域驱动设计(DDD)是一种基于模型驱动的软件设计方式。它以领域为核心,分析领域中的问题,通过建立一个领域模型来有效的解决领域中的核心的复杂问题。Eric Ivans为领域驱动设计提出了大量的最佳实践和经验技巧。只有对领域的不断深入认识,才能得到一个解决领域核心问题的领域模型。如果一个应用的复杂性不是在技术方面的,而是在领域本身,即领域内的业务很复杂,那这种应用,使用领域驱动设计的价值就越大。

    日期 2023-06-12 10:48:40     
  • DDD领域驱动设计基本理论知识总结

    DDD领域驱动设计基本理论知识总结

    领域驱动设计之领域模型 加一个导航,关于如何设计聚合的详细思考,见这篇文章。 2004年Eric Evans 发表Domain-Driven Design –Tackling Complexity in the Heart of Software (领域驱动设计),简称Evans DDD。领域驱动设计分为两个阶段: 以一种领域专家、设计人员、开发人员都能理解的通用语言作为相互交流的工具,在交

    日期 2023-06-12 10:48:40     
  • 【华为云技术分享】如何设计高质量软件-领域驱动设计DDD(Domain-Driven Design)学习心得

    【华为云技术分享】如何设计高质量软件-领域驱动设计DDD(Domain-Driven Design)学习心得

    DDD做为软件设计方法于2004年提出,一直不温不火,最近几年突然火起来了,为啥呢?正所谓机会给有准备的人,因为微服务的流行,大家都跃跃欲试把传统单体软件转成微服务架构,但理论很丰满,现实很骨感,光是分解微服务就让人找不到北

    日期 2023-06-12 10:48:40     
  • 关于领域驱动设计(DDD)中聚合设计的一些思考

    关于领域驱动设计(DDD)中聚合设计的一些思考

    转载:https://www.cnblogs.com/netfocus/p/3307971.html (评论有例子) 聚合设计的原则 聚合是用来封装真正的不变性,而不是简单的将对象组合在一起; 聚合应尽量设计的小; 聚合之间的关联通过ID,而不是对象引用; 聚合内强一致性,聚合之间最终一致性; 聚合是用来封装真正的不变性,而不是简单的将对象组合在一起 这个原则,就是强调聚合的真正用途除了封装

    日期 2023-06-12 10:48:40     
  • 领域驱动设计(DDD)

    领域驱动设计(DDD)

    领域驱动设计在互联网业务开发中的实践 领域驱动设计,根本目的在于,系统的高内聚低耦合。 通过拆分具体需求,生成核心上下文,各个支撑上下文,上下文之间低耦合。  

    日期 2023-06-12 10:48:40     
  • [0] DDD领域驱动设计(二) 之 值对象

    [0] DDD领域驱动设计(二) 之 值对象

    DDD中实体对象与值对象的解释比较抽象。主要根据持续性与 ID 识别来区分。 ID并非某一对象的直观自然属性,而是在分析建模之 后,赋给模型中的实体类,来达到跟踪,区别,存储目的的一个特值。 结合项目实践及 DDD一书中的理论,感觉应该从以下几方面分析: 1.主从:某一概念是主动还是从属性的,如果是从属性的,且这种 从属性的生命周期严格依赖于某实体,如可以考虑成为值对象的候 选。 2. 复用:某

    日期 2023-06-12 10:48:40     
  • 【架构设计】DDD(domain driven design/领域驱动设计)

    【架构设计】DDD(domain driven design/领域驱动设计)

    基本概念: 领域驱动设计(简称 ddd)概念来源于2004年著名建模专家eric evans发表的他最具影响力的书籍:《domain-driven design –tackling complexity

    日期 2023-06-12 10:48:40     
  • 领域驱动设计DDD

    领域驱动设计DDD

    http://qinghua.github.io/ddd/#%E8%81%9A%E5%90%88%EF%BC%88Aggregate%EF%BC%89 简介 什么是领域 《领域驱动设计》书里写的是:用户会把软件程序应用于某个主体区域,这个区域就是软件的领域。简单来说,就认为是公司的某块业务好了。如果领域比较大,可以将其拆分为多个子域(Subdomain),子域包含核心域(Core Domain)

    日期 2023-06-12 10:48:40     
  • 微服务与领域驱动设计,架构实践总结

    微服务与领域驱动设计,架构实践总结

    怎样的架构才能配得上造到飞起的变化? 一、软件复杂性 1、复杂原因 如果软件系统存在持续的迭代周期,那么其中业务、技术、架构的复杂性都会直线拉升,其相应的开发难度也会提高,可以用一句话总结其根本原因:唯一不变的就是变化; 业务变化:导致复杂性的根本原因,在多端多版本适配的过程中代码快速膨胀; 数据变化:数据随着业务的变化和发展,不断沉淀积累,需要做横向与纵向的管理; 技术升级:技术组件可

    日期 2023-06-12 10:48:40     
  • .net core +codefirst(.net core 基础入门,适合这方面的小白阅读)  【我们一起写框架】领域驱动设计的CodeFirst框架(一)—序篇

    .net core +codefirst(.net core 基础入门,适合这方面的小白阅读) 【我们一起写框架】领域驱动设计的CodeFirst框架(一)—序篇

    .net core +codefirst(.net core 基础入门,适合这方面的小白阅读)       前言   .net core mvc和 .net mvc开发很相似,比如 视图-模型-控制器结构。所以.net mvc开发员很容易入手.net core mvc 。但是两个又有细微的区别,比如配置.net mvc中Web.config和Global.asa

    日期 2023-06-12 10:48:40     
  • 领域驱动设计(Domain Driven Design)参考架构详解

    领域驱动设计(Domain Driven Design)参考架构详解

    摘要   本文将介绍领域驱动设计(Domain Driven Design)的官方参考架构,该架构分成了Interfaces、Applications和Domain三层以及包含各类基础设施的Infrastructure。本文会对架构中一些重要组件和问题进行讨论,给出一些分析结论。本文原文连接:http://blog.csdn.net/bluishglc/article/details/

    日期 2023-06-12 10:48:40     
  • 领域驱动设计和实践

    领域驱动设计和实践

    http://kb.cnblogs.com/page/112298/ 作者: 池建强  来源: InfoQ  发布时间: 2013-12-01 13:03  阅读: 2892 次  推荐: 7   原文链接   [收藏]   摘要:本文

    日期 2023-06-12 10:48:40     
  • 《领域驱动设计:软件核心复杂性应对之道(修订版)》—第2章 2.1节模式:Ubiquitous Language

    《领域驱动设计:软件核心复杂性应对之道(修订版)》—第2章 2.1节模式:Ubiquitous Language

    本节书摘来自异步社区《领域驱动设计:软件核心复杂性应对之道(修订版)》一书中的第2章,第2.1节模式:Ubiquitous Language,作者【美】埃里克•埃文斯(Eric Evans), 马利伟 , 万龙,更多章节内容可以访问云栖社区“异步社区”公众号查看。 第2章 交流与语言的使用领域驱动设计:软件核心复杂性应对之道(修订版)领域模型可成为软件项目通用语言的核心。该模型是一组得自于项目人

    日期 2023-06-12 10:48:40     
  • 《领域驱动设计:软件核心复杂性应对之道(修订版)》—第2章 2.3节一个团队,一种语言

    《领域驱动设计:软件核心复杂性应对之道(修订版)》—第2章 2.3节一个团队,一种语言

    有了Ubiquitous Language之后,开发人员之间的对话、领域专家之间的讨论以及代码本身所表达的内容都基于同一种语言,都来自于一个共享的领域模型。 本节书摘来自异步社区《领域驱动设计:软件核心复杂性应对之道(修订版)》一书中的第2章,第2.3节一个团队,一种语言,作者【美】埃里克•埃文斯(Eric Evans), 马利伟 , 万龙,更多章节内容可以访问云栖社区“异步社区”公众号查看。

    日期 2023-06-12 10:48:40