当前位置: 首页 > 编程学习 > 软件工程 > 领域驱动 > 正文

用DDD设计一个电商网站(三) 初涉核心域

2018-04-22 来源:博客园/Zachary_Fan

一、前言

结合我们本次系列的第一篇博文中提到的上下文映射图,得知我们这个电商网站的核心域就是销售子域。因为电子商务是以信息网络技术为手段,以商品交换为中心的商务活动,一个好的核心域设计可以大大提升企业的竞争力和对市场变化的相应速度。

那么我们开始设计领域对象。对于设计领域对象的基本概念不了解的可以先阅读我的该系列第二篇文章(传送门:如何一步一步用DDD设计一个电商网站(二)—— 项目架构)。

二、定义几个基类

我相信我们大部分人会以如下的方式去存放我们定义的基类,见图1。

【图1】

这是一种比较常规的技术分层思维方式产生的结果,在某些项目文件中或多或少有那么几个"Base"、"Core"、"Common"等的文件夹存放着一些通用的类,它们起着对当前项目中类的抽象、实现通用性支撑性功能的作用。然而在DDD中这些都应属于基础设施层的事情,这样能够保证其他层专注于自身的职责,不会把本应内聚的东西泄露到这些类中。如我们当前的领域层就专注于领域建模,里面的概念全部与通用语言相关。说干就干,搬到基础设施层去,再取个能表达出一致概念的名字的模块存放,如图2。

【图2】