引子,软件工程没有银弹 上一篇博文,抛出了一个问题,领域驱动设计真的是万能的良方吗?对于这个问题,大家的答案无疑是一致的,作为一种非常受软件行业欢迎的软件思想,领域驱动设计固然有很多优点,却并非万能。 回到十年前,第一节软件工程学的课堂上,我们的老师就告诉了我们一句真理,软件工程没有银蛋,这句话说的 ...
分类:
其他好文 时间:
2018-12-08 00:15:37
阅读次数:
195
作为一名资深软件行业从业者,我以前一直从事项目开发。在项目执行过程中,往往会采用快速开发模式,按照软件工程的基本流程建立一套项目软件管理模式。这个流程大概是这样的:1,需求调研:大概花费合同周期的六分之一时间来进行需求调研,需求调研环节力求对用户需求进行全面的掌握,并整理成需求规格说明书。2,总体设 ...
分类:
其他好文 时间:
2018-11-27 21:03:52
阅读次数:
131
在DDD领域驱动开发中会用到数据传输对象(Data Transfer Objects),下面是对数据传输对象作用的总结 1、抽象领域层 在展现层中数据传输对象对领域对象进行了有效的抽象。这样你的层(layers)将被恰当的隔离开来。甚至当你想要完全替换展现层时,你还可以继续使用已经存在的应用层和领域 ...
分类:
其他好文 时间:
2018-11-16 01:18:55
阅读次数:
214
1、分解模式:如何把应用分成若干个小服务? 1)按业务功能分解,将应用分解成能产生业务价值的最小单元。 2)对于跨多个业务的类(如订单会被订单管理、订单交付多个服务用到)用领域驱动设计(DDD),使用子域和边界上下文的概念来着手解决。 2、集成模式 1)API网关模式 2)聚合器模式 3、数据库模式 ...
分类:
其他好文 时间:
2018-11-14 10:26:58
阅读次数:
667
DDD简明入门之道 开篇 犹豫了很久才写下此文,一怕自己对DDD的理解和实践方式有偏差,二怕误人子弟被贻笑大方,所以纰漏之处还望各位谅解。不啰嗦,马上进入正题,如果你觉得此文不错就点个赞吧。 概述 “Domain Driven Design领域驱动设计”简称DDD,是一套综合软件系统分析和设计的面向 ...
分类:
其他好文 时间:
2018-10-27 17:42:30
阅读次数:
137
2004年Eric Evans 发表Domain Driven Design –Tackling Complexity in the Heart of Software.领域驱动设计 软件核心复杂性应对之道。通过标题很容易找到一些标签: 领域,核心,复杂性 。 领域 领域,维基百科给出的解释是:指某 ...
分类:
其他好文 时间:
2018-10-26 17:55:43
阅读次数:
128
领域专用语言 领域驱动设计(Domain Driver Design)开发中,最令我震撼的是领域专用语言(Domain specific language),领域专用语言专注于描述当前领域内的业务细节,与具体技术实现细节解耦 在领域驱动设计中,具体的技术细节(数据库,消息队列,缓存),以框架的形式存 ...
分类:
其他好文 时间:
2018-10-16 01:40:24
阅读次数:
176
“语言只是工具”,你会无数次听到这句话。在最开始学习一门语言时,赞同这句话;在慢慢深入时,特别是遇到困难时(这里的困难更多指的是一门语言语法上的学习的困难,例如最开始学习C的时候的指针就让很多人觉得很难理解。),此时有人说这句话,你或许会觉得很佩服这个人、也有可能心里觉得对方在装X;再后来你自认为学 ...
分类:
编程语言 时间:
2018-09-30 00:22:37
阅读次数:
215
一、什么是领域驱动设计 1.1、面向业务的设计 当我们需要构建一个业务复杂的系统,我们不仅要从技术角度去构建一个稳健的系统,还要从业务角度出发,保证系统能满足业务需求。 架构设计的考虑点:不仅面向技术,更应该面向业务;面对不同的业务复杂度,选择的架构可能不同。 架构师的工作:面对复杂的业务逻辑,需要 ...
分类:
其他好文 时间:
2018-09-27 10:37:44
阅读次数:
610
上一篇,我们完成了对数据库和数据模型的创建,这一篇我们将进行仓储的建立。 概要: 基于DDD(领域驱动设计)的仓储建造Repository和UnitOfWork搭配简单使用。 一、创建上下文 二、创建领域的好伙伴,仓库管理员TRepository 三、创建工作单元 至此,仓储建造完毕。接下来我们将对 ...
分类:
数据库 时间:
2018-09-19 19:45:56
阅读次数:
211