[图解]DDD领域驱动设计伪创新-聚合根02




0
00:00:04,940 --> 00:00:06,993
在领域驱动设计之前
1
00:00:06,993 --> 00:00:09,503
的软件开发书籍里面
2
00:00:09,503 --> 00:00:12,470
并没有出现聚合根这样的说法
3
00:00:13,000 --> 00:00:14,840
大家可以去找一下
4
00:00:15,120 --> 00:00:15,315
5
00:00:15,315 --> 00:00:16,880
反正我是没找到
6
00:00:17,180 --> 00:00:23,330
所以呢,这个聚合根应该是Eric Evans的一个造词
7
00:00:24,100 --> 00:00:27,700
或者说,是他的一个创造,创新
8
00:00:28,490 --> 00:00:31,080
可惜,这个创新是一个错的
9
00:00:31,380 --> 00:00:31,646
10
00:00:31,646 --> 00:00:32,980
是一个伪创新
11
00:00:35,090 --> 00:00:36,020
为什么呢
12
00:00:37,180 --> 00:00:39,868
这个我们明天再说了
13
00:00:39,868 --> 00:00:45,490
实际上,这些内容,我已经写在《软件方法》下册里面了
14
00:00:45,770 --> 00:00:49,450
当前公开的电子版可以下载的
15
00:00:49,730 --> 00:00:52,189
大家感兴趣,想提前了解的
16
00:00:52,189 --> 00:00:53,135
可以下载
17
00:00:53,135 --> 00:00:55,028
书里面写清楚了
18
00:00:55,028 --> 00:00:57,298
包括我们前面的视频,有很多
19
00:00:57,298 --> 00:00:59,380
也是书里面都有写了的
20
00:00:59,680 --> 00:01:01,403
不一定要等着看视频
21
00:01:01,403 --> 00:01:03,126
或者说,一定要看视频
22
00:01:03,126 --> 00:01:04,677
很多(内容)书里面都有
23
00:01:04,677 --> 00:01:06,056
而且还有题目
24
00:01:06,056 --> 00:01:07,780
还有题目考察
0
00:00:01,240 --> 00:00:02,000
你看
1
00:00:02,280 --> 00:00:03,860
当我们把
2
00:00:04,260 --> 00:00:06,390
刚才植物那个图
3
00:00:06,670 --> 00:00:07,920
再往外扩
4
00:00:08,710 --> 00:00:08,941
5
00:00:08,941 --> 00:00:11,490
就得到更大的一个层级的
6
00:00:11,770 --> 00:00:15,010
整体-部分的关联的图
7
00:00:15,760 --> 00:00:17,220
我们可以看到
8
00:00:17,840 --> 00:00:21,010
对象可以由很多部件组成
9
00:00:21,290 --> 00:00:22,260
对象
10
00:00:22,570 --> 00:00:25,420
也可以成为更大对象的部件
11
00:00:26,100 --> 00:00:27,776
哪一个不是整体
12
00:00:27,776 --> 00:00:29,691
哪一个不是部分呢
13
00:00:29,691 --> 00:00:30,410
对不对
14
00:00:32,080 --> 00:00:35,330
对象本身它就是由
15
00:00:35,610 --> 00:00:37,706
自己的属性组成的嘛
16
00:00:37,706 --> 00:00:38,405
对不对
17
00:00:38,405 --> 00:00:41,900
然后它自己又可以组成更大的对象
18
00:00:43,190 --> 00:00:45,885
所以呢,你直接指着这个结点说
19
00:00:45,885 --> 00:00:47,130
它是一个整体
20
00:00:48,030 --> 00:00:48,302
21
00:00:48,302 --> 00:00:49,940
这是不对的
22
00:00:51,610 --> 00:00:53,700
那什么情况下
23
00:00:54,170 --> 00:00:55,280
可以
24
00:00:56,640 --> 00:00:58,247
把它定死了
25
00:00:58,247 --> 00:00:58,890
只有
26
00:00:59,820 --> 00:01:02,010
两层的情况下,可以
27
00:01:04,300 --> 00:01:05,200
28
00:01:05,490 --> 00:01:06,957
只有整体-部分
29
00:01:06,957 --> 00:01:08,180
定死了
30
00:01:08,860 --> 00:01:10,460
这下面就没有了
31
00:01:11,850 --> 00:01:13,450
这上面也没有了
32
00:01:14,770 --> 00:01:15,770
这可以
相关文章:
[图解]DDD领域驱动设计伪创新-聚合根02
0 00:00:04,940 --> 00:00:06,993 在领域驱动设计之前 1 00:00:06,993 --> 00:00:09,503 的软件开发书籍里面 2 00:00:09,503 --> 00:00:12,470 并没有出现聚合根这样的说法 3 00:00:13,000 --> 00:00:14,840 大家可以去找一下 4 00:00:15,120 --> 00:00:15…...
《QT实用小工具·二十》存款/贷款计算器
1、概述 源码放在文章末尾 该项目实现了用于存款和贷款的计算器的功能,如下图所示: 项目部分代码如下: #ifndef WIDGET_H #define WIDGET_H#include <QWidget>namespace Ui { class Widget; }class Widget : public QWidget {Q_OBJ…...
hbase基础shell用法
HBase中用create命令创建表,具体如下: create student,Sname,Ssex,Sage,Sdept,course 此时,即创建了一个“student”表,属性有:Sname,Ssex,Sage,Sdept,course。因为HBase的表中会有一个系统默认的属性作为行键&#x…...
ElasticSearch 的 BoolQueryBuilder 使用
ElasticSearch的BoolQueryBuilder定义: A Query that matches documents matching boolean combinations of other queries import org.elasticsearch.index.query.QueryBuilders;BoolQueryBuilder boolQueryBuilder QueryBuilders.boolQuery(); for (String wor…...
[C++/Linux] 网络I/O处理
引言:网络数据能够正常到达用户并且被接收是进行网络传输的根本目的,网络传输的数据发送和接收有多种方案,本文章就对通过向量接收和发送等数据传输方式,并且对多种I/O模型进详细分析介绍。 目录 一.I/O函数 1.1 recv和send rec…...
HarmonyOS4 页面路由
Index.ets: import router from ohos.routerclass RouterInfo {// 页面路径url: string// 页面标题title: stringconstructor(url: string, title: string) {this.url urlthis.title title} }Entry // 入口組件 Component struct Index {State message: string 页面列表// …...
ShardingSphere再回首
概念: 连接:通过协议 方言及库存储的适配,连接数据和应用,关注多模数据苦之间的合作 增量:抓取库入口流量题提供重定向, 流量变形(加密脱敏)/鉴权/治理(熔断限流)/分析等 可插拔:微内核 DDL:cr…...
第七篇:3.6 其他评估考虑/4.审计指南/5. 通用报告规范/6.披露指南、参考标准及其他 - IAB/MRC及《增强现实广告效果测量指南1.0》
翻译计划 第一篇概述—IAB与MRC及《增强现实广告效果测量指南》之目录、适用范围及术语第二篇广告效果测量定义和其他矩阵之- 3.1 广告印象(AD Impression)第三篇广告效果测量定义和其他矩阵之- 3.2 可见性 (Viewability)第四篇 …...
函数、指针和数组的相互运用(C语言)
1、函数指针数组 含义:数组的每个元素都是函数指针类型.eg: (此代码链接:http://t.csdnimg.cn/ClJmb.也可以在我发布博客中找到) 2、指向函数指针数组的指针 1、引入 3、回调函数 1、含义:就是一个通过…...
.Net Core/.Net 6/.Net 8,一个简易的消息队列
.Net Core/.Net 6/.Net 8,一个简易的消息队列 身份验证接口身份验证接口实现program.cs通过api调用 做着玩的, 只实现了消息入队出队功能,没有持久化,也没有其它任何高级功能 直接上代码 public class AMQBase//:ISingleton {/// <summary…...
OpenHarmony4.0分布式任务调度浅析
1 概述 OpenHarmony 分布式任务调度是一种基于分布式软总线、分布式数据管理、分布式 Profile 等技术特性的任务调度方式。它通过构建一种统一的分布式服务管理机制,包括服务发现、同步、注册和调用等环节,实现了对跨设备的应用进行远程启动、远程调用、…...
element-ui backtop 组件源码分享
今日简单分享 backtop 组件的源码实现,从以下三个方面: 1、backtop 组件页面结构 2、backtop 组件属性 3、backtop 组件事件 一、backtop 组件页面结构 二、backtop 组件属性 2.1 target 属性,触发滚动的对象,类型 string&am…...
MongoDB快照(LVM)业务场景应用实战
MongoDB和LVM快照概述 MongoDB的重要性:MongoDB支持的灵活的文档模型,使其成为处理大量分散数据的理想选择,特别是在需要快速迭代和频繁更改数据结构的应用中。 LVM(逻辑卷管理)快照技术基本概念:LVM允许…...
3D开发工具HOOPS:推动汽车行业CAD可视化发展
在最近的行业对话中,Tech Soft 3D(HOOPS厂商)的Jonathan Girroir和Actify的Peter West探讨了CAD可视化在当代企业中的重要性和挑战。作为CAD可视化领域的佼佼者,Actify通过其广受欢迎的Spinfire应用,赋能了全球40多个国…...
Centos安装MySQL提示公钥尚未安装
一、问题 在Centos7.9使用yum安装MySQL时出现错误,提示:mysql-community-server-5.7.44-1.el7.x86_64.rpm 的公钥尚未安装,如下图所示: 执行命令:systemctl start mysqld也提示错误:Failed to start mysq…...
FebHost:英国.UK域名简介
.UK域名是互联网上最广为人知且广泛使用的国家代码顶级域名之一。作为英国官方的国家代码,自诞生之日起,.UK域名对英国本土个人、企业及在线品牌建设扮演了关键角色。 .UK域名于1985年首次推出,这是早期为创建有序域名系统而努力的一部分。当…...
SQL Serve---查询
概要 1、order by子句 —默认asc(升序)、desc(降序) 2、distinct关键字 3、group by子句 4、聚合函数 —max()、min()、sum()、avg()、count() 5、having子句 6、compute子句 英文关键字 order by 排序 asc…...
RabbitMQ3.13.x之十一_RabbitMQ中修改用户密码及角色tags
RabbitMQ3.13.x之十一_RabbitMQ中修改用户密码及角色tgs 文章目录 RabbitMQ3.13.x之十一_RabbitMQ中修改用户密码及角色tgs1. 修改用户的密码1. 修改密码语法2. 修改案例 2.修改角色tags1. 修改标签(tags)语法2. 修改案例 可以使用 RabbitMQ 的命令行工具 rabbitmqctl 来修改用…...
Taro打包生成不同目录
使用taro init创建taro项目时,taro默认打包目录是: /config/index.js outputRoot:dist默认的目录,编译不同平台代码时就会覆盖掉,为了达到多端同步调试的目的,这时需要修改默认生成目录了,通过查看官方文…...
2024-04-08 NO.5 Quest3 手势追踪进行 UI 交互
文章目录 1 玩家配置2 物体配置3 添加视觉效果4 添加文字5 其他操作5.1 双面渲染5.2 替换图片 在开始操作前,我们导入先前配置好的预制体 MyOVRCameraRig,相关介绍在 《2024-04-03 NO.4 Quest3 手势追踪抓取物体-CSDN博客》 文章中。 1 玩家配置 &a…...
多模态2025:技术路线“神仙打架”,视频生成冲上云霄
文|魏琳华 编|王一粟 一场大会,聚集了中国多模态大模型的“半壁江山”。 智源大会2025为期两天的论坛中,汇集了学界、创业公司和大厂等三方的热门选手,关于多模态的集中讨论达到了前所未有的热度。其中,…...
PHP和Node.js哪个更爽?
先说结论,rust完胜。 php:laravel,swoole,webman,最开始在苏宁的时候写了几年php,当时觉得php真的是世界上最好的语言,因为当初活在舒适圈里,不愿意跳出来,就好比当初活在…...
HTML 列表、表格、表单
1 列表标签 作用:布局内容排列整齐的区域 列表分类:无序列表、有序列表、定义列表。 例如: 1.1 无序列表 标签:ul 嵌套 li,ul是无序列表,li是列表条目。 注意事项: ul 标签里面只能包裹 li…...
Java - Mysql数据类型对应
Mysql数据类型java数据类型备注整型INT/INTEGERint / java.lang.Integer–BIGINTlong/java.lang.Long–––浮点型FLOATfloat/java.lang.FloatDOUBLEdouble/java.lang.Double–DECIMAL/NUMERICjava.math.BigDecimal字符串型CHARjava.lang.String固定长度字符串VARCHARjava.lang…...
Qt Http Server模块功能及架构
Qt Http Server 是 Qt 6.0 中引入的一个新模块,它提供了一个轻量级的 HTTP 服务器实现,主要用于构建基于 HTTP 的应用程序和服务。 功能介绍: 主要功能 HTTP服务器功能: 支持 HTTP/1.1 协议 简单的请求/响应处理模型 支持 GET…...
视频字幕质量评估的大规模细粒度基准
大家读完觉得有帮助记得关注和点赞!!! 摘要 视频字幕在文本到视频生成任务中起着至关重要的作用,因为它们的质量直接影响所生成视频的语义连贯性和视觉保真度。尽管大型视觉-语言模型(VLMs)在字幕生成方面…...
安卓基础(aar)
重新设置java21的环境,临时设置 $env:JAVA_HOME "D:\Android Studio\jbr" 查看当前环境变量 JAVA_HOME 的值 echo $env:JAVA_HOME 构建ARR文件 ./gradlew :private-lib:assembleRelease 目录是这样的: MyApp/ ├── app/ …...
python报错No module named ‘tensorflow.keras‘
是由于不同版本的tensorflow下的keras所在的路径不同,结合所安装的tensorflow的目录结构修改from语句即可。 原语句: from tensorflow.keras.layers import Conv1D, MaxPooling1D, LSTM, Dense 修改后: from tensorflow.python.keras.lay…...
虚拟电厂发展三大趋势:市场化、技术主导、车网互联
市场化:从政策驱动到多元盈利 政策全面赋能 2025年4月,国家发改委、能源局发布《关于加快推进虚拟电厂发展的指导意见》,首次明确虚拟电厂为“独立市场主体”,提出硬性目标:2027年全国调节能力≥2000万千瓦࿰…...
Linux系统部署KES
1、安装准备 1.版本说明V008R006C009B0014 V008:是version产品的大版本。 R006:是release产品特性版本。 C009:是通用版 B0014:是build开发过程中的构建版本2.硬件要求 #安全版和企业版 内存:1GB 以上 硬盘…...
