怎么划分领域、子域、核心域、通用域和支撑域

article/2025/9/17 14:03:07

怎么划分领域、子域、核心域、通用域和支撑域

  • 如何理解领域和子域?
    • 什么是领域
    • 什么是子域
    • 怎么划分领域和子域
    • 如何理解核心域、通用域和支撑域?
    • 为什么要划分核心域、通用域和支撑域
  • 总结

DDD 的知识体系提出了很多的名词,像:领域、子域、核心域、通用域、支撑域、限界上下文、聚合、聚合根、实体、值对象等等,非常多。这些名词,都是关键概念,所以在这篇文章中重点了解 领域、子域、核心域、通用域和支撑域等重要概念。以及怎么划分领域?

如何理解领域和子域?

什么是领域

百度百科对领域的解释:“领域具体指一种特定的范围或区域。”由此可以看出:领域就是来确定范围的,范围即边界,这也是 DDD 在设计中不断强调边界的原因。

DDD 的领域就是这个边界内要解决的业务问题域(也符合特定的语义)。

什么是子域

既然领域是用来限定业务边界和范围的,那么就会有大小之分,领域越大,业务范围就越大,反之则相反。如果一个领域过大,还可以把领域可以进一步划分为子领域。划分出来的多个子领域称为子域,每个子域对应一个更小的问题域或更小的业务范围。

怎么划分领域和子域

DDD 的研究方法与自然科学的研究方法类似。当人们在自然科学研究中遇到复杂问题时,通常的做法就是将问题一步一步地细分,再针对细分出来的问题域,逐个深入研究,探索和建立所有子域的知识体系。当所有问题子域完成研究时,我们就建立了全部领域的完整知识体系了。

植物研究时领域的细分
以植物研究时领域的细分为例:

第一步:确定研究对象,即研究领域,这里是一棵桃树。

第二步:对研究对象进行细分,将桃树细分为器官,器官又分为营养器官和生殖器官两种。其中营养器官包括根、茎和叶,生殖器官包括花、果实和种子。桃树的知识体系是我们已经确定要研究的问题域,对应 DDD 的领域。根、茎、叶、花、果实和种子等器官则是细分后的问题子域。这个过程就是 DDD 将领域细分为多个子域的过程。

第三步:对器官进行细分,将器官细分为组织。比如,叶子器官可细分为保护组织、营养组织和输导组织等。这个过程就是 DDD 将子域进一步细分为多个子域的过程。

第四步:对组织进行细分,将组织细分为细胞,细胞成为我们研究的最小单元。细胞之间的细胞壁确定了单元的边界,也确定了研究的最小边界。

每一个细分的领域都会有一个知识体系,也就是 DDD 的领域模型。在所有子域的研究完成后,我们就建立了全域的知识体系了,也就建立了全域的领域模型。

如何理解核心域、通用域和支撑域?

在领域不断划分的过程中,领域会细分为不同的子域,子域可以根据自身重要性和功能属性划分为三类子域,它们分别是:核心域、通用域和支撑域。

核心域:它是业务成功的主要因素和公司的核心竞争力。

通用域:没有太多个性化的诉求,同时被多个子域使用的通用功能子域

支撑域:支撑其他领域业务,具有企业特性,但不具有通用性。

为什么要划分核心域、通用域和支撑域

以桃树为例:

不同的人对桃树的理解是不同的。如果这棵桃树生长在公园里,在园丁的眼里,他喜欢的是“人面桃花相映红”的阳春三月,这时花就是桃树的核心域。但如果这棵桃树生长在果园里,对果农来说,他则是希望在丰收的季节收获硕果累累的桃子,这时果实就是桃树的核心域。

在不同的场景下,不同的人对桃树核心域的理解是不同的,因此对桃树的处理方式也会不一样。园丁更关注桃树花期的营养,而果农则更关注桃树落果期的营养,有时为了保证果实的营养供给,还会裁剪掉疯长的茎和叶(通用域或支撑域)。

同样的道理,商业模式的不同会导致核心域划分结果的不同。有的公司核心域可能在客户服务,有的可能在产品质量,有的可能在物流。在公司领域细分、建立领域模型和系统建设时,我们就要结合公司战略重点和商业模式,找到核心域了,且重点关注核心域。

总结

领域的核心思想就是将问题域逐级细分,来降低业务理解和系统实现的复杂度。通过领域细分,逐步缩小微服务需要解决的问题域,构建合适的领域模型,而领域模型映射成系统就是微服务了。

核心域、支撑域和通用域的主要目标是:通过领域划分,区分不同子域在公司内的不同功能属性和重要性,从而公司可对不同子域采取不同的资源投入和建设策略,其关注度也会不一样。


http://chatgpt.dhexx.cn/article/49S3lyf5.shtml

相关文章

网络安全-域服务器(二)

域服务器: 域服务器(一):网络安全-域(一)_IT之一小佬的博客-CSDN博客域服务器(二):网络安全-域服务器(二)_IT之一小佬的博客-CSDN博客 域 11.O…

网课管理系统

开发工具(eclipse/idea/vscode等): 数据库(sqlite/mysql/sqlserver等): 功能模块(请用文字描述,至少200字): 3. 功能简介 用户中心 1.1用户注册:用户需要注册才能登陆进入web 1.2用户登录:通过判断匹配来进…

如何搭建域服务器

实验名称:如何搭建域服务器 实验环境:wind2003*2 实验过程: 由于Windows Server 2003在默认的安装过程中DNS是不被安装的,所以我们需要手动去添加, 添加方法如下:“开始—设置—控制面板—添加删除程序”&#xff…

搭建域环境(win)

目录 常见域环境是用:win2012 win7 win2003 本blog环境:Windows Server 2012 R2 and Win2008 1.Window Server 2012 R2 服务器配置 1)变更计算机名DC(用于存储活动目录数据库的计算机) 2)设置服务器…

网络教学管理系统

1、项目介绍 网络教学管理系统拥有三种角色 管理员:专业管理、班级管理、学生教师管理、公告管理、留言板管理、学习资料管理、教学视频管理、试题管理等 教师:系统留言、发布作业等 学生:可以查看作业视频、登录注册、下载作业资料等 2、…

域控-笔记二(域权限,域组,域管理,Kerberso 协议)

文章目录 一. 域环境搭建1.1 添加AD功能1.2 安装1.3 部署 二. 如何加入域2.1 加入域2.2 域中主机登录2.3 退出域2.4 添加域用户 三. 域权限3.1 A-G-DL-P策略3.2 组几个比较重要的域本地组几个比较重要的全局组、通用组的权限 四. 域管理4.1 域用户账户的管理4.2 组的管理4.3 组…

中职网络搭建 域用户密码设置

中职网络搭建 密码设置 域密码策略: 进入域控制器组策略(组策略管理) 计算机配置–Windows设置–安全设置–账户策略–密码策略 “密码必须符合复杂性要求”:密码设置必须要有数字、大写字母、小写字母、字符,四种中…

第一讲 数域

1. 引入 数是数学的一个最基本概念, 回顾一下我们曾经学习过的数的发展过程: (1) 代数性质: 关于数的加, 减, 乘 , 除等运算的性质称为数的代数性质. (2) 数集: 数的集合简称数集. 常见的数集: 复试C; 实数R;有理数Q等等. 它们有一个共同的性质就是对加减乘除运算封闭. 2. 数…

域控知识与安全02:初始访问

初始访问 前言信息收集1.Nmap命令参数使用方法 2.Metasploit命令参数使用方法 3.地址解析协议命令参数使用方法 4.ICMP5.Nbtscan命令参数使用方法 6.telnet使用方法 暴力破解1.Hydra命令参数使用方法 2.Hashcat常用参数使用方法 总结系列相关内容 前言 攻击者首先通过初始访问入…

1. 跨域学习

1. 跨域学习 1.1 什么是跨域 出于浏览器的同源策略限制。同源策略(Sameoriginpolicy)是一种约定,它是浏览器最核心也最基本的安全功能,如果缺少了同源策略,则浏览器的正常功能可能都会受到影响。可以说Web是构建在同…

域的基础概念

初具规模的办公网络通常以Windows域的形式进行管理,域在内网渗透中的地位举足轻重,本文主要介绍域的基础概念,为后续域渗透的介绍做铺垫 部分内容参考文章:https://blog.csdn.net/wulantian/article/details/42418231 文章目录 1.…

域,Domain。 计算机域是一个有安全边界的计算机集合,在同一个域中的计算机彼此之间已经建立了信任关系,在域内访问其他机器,不再需要被访问机器的许可。 1.一台计算机在内网环境中有两种工作模式: 工作组:默…

域环境的搭建(单域、父子域、域树)

准备材料:虚拟机 Windows server 2012 r2 两台、Windows 10 一台**(关闭所有防火墙)** 实验一:单域的搭建 前提:将网络链接模式改为仅主机模式,并手动配置IP地址。 1.打开一台干净的Windows server 2012 …

网安基础:教你如何搭建单域,父子域,域树。

单域 1.实验准备:一台干净的windows sever虚拟机,一台win10客户端虚拟机。 2.虚拟机配置:设置仅主机模式,静态ip,关闭防火墙,两台机器设置的静态ip要在同一网段上 3.实验过程: 打开服务器管理器…

搭建域环境

1.搭建域环境 什么是域? Windows域为网络管理员提供了一种方法来管理大量的pc机,并从一个地方控制它们。一个或多个服务器(称为域控制器)控制域及其上的计算机。 域通常由在同一本地网络上的计算机组成。但是,连接到某个域的计算机可以通过VP…

二叉树的前序-中序-后序遍历

在牛客网刷到了二叉树的遍历,二叉树的遍历分为前序遍历,前序遍历也有先序遍历之称,还有中序遍历,以及后序遍历,这么多种遍历,遍历的方式不一样而已,前序遍历是先遍历根然后左节点然后是右节点&a…

【LeetCode】根据序列构造二叉树 (前序中序)(中序后序)

目录 105. 从前序与中序遍历序列构造二叉树 1.题目要求: 2.思路分析: 3.代码展示: 106. 从中序与后序遍历序列构造二叉树 1.题目要求: 2思路分析: 3.代码展示 105. 从前序与中序遍历序列构造二叉树 1.题目要求…

二叉树的前序,中序,后序和层序遍历

二叉树的前序,中序,后序和层序遍历 一. 二叉树的简易构建 由于二叉树的增删查改意义不大,所以我们直接手动建立二叉树。建立简易二叉树之前,我们先定义一个二叉树中的节点结构体类型(包含节点值,节点左指…

快速学会二叉树的前序、中序、后序遍历

一、概念 二叉树:一个根节点,两个子节点(子节点可能没有)。 --整篇文章内容中,左侧的子节点简称左,右侧的子节点简称右,根节点简称根。-- 前序(先序)遍历:按根左右的顺序输出。 中序遍历:按左根…

算法1—递归实现二叉树的前序、中序、后序遍历

为什么会有这三种遍历? 仅个人理解,计算机特点就是处理速度级快,为了不遗漏、不重复处理二叉树的每一个节点,总得按照某种顺序吧,前辈们发明了处理二叉树节点的顺序:前序遍历、中序遍历、后续遍历&#xf…