表格模块
一个单一实例,处理数据库表或视图中所有行的业务逻辑。
有关完整描述,请参见 EAA 模式 第 125 页
面向对象的关键信息之一是将数据与使用它的行为捆绑在一起。传统的面向对象方法基于具有标识的对象,类似于领域模型 (116)。因此,如果我们有一个 Employee 类,它的任何实例都对应于一个特定的员工。这种方案运作良好,因为一旦我们拥有对员工的引用,我们就可以执行操作、跟踪关系并收集有关他的数据。
领域模型 (116) 的问题之一是与关系数据库的接口。在许多方面,这种方法将关系数据库视为一个被关在阁楼里、没有人想谈论的疯狂的阿姨。因此,您通常需要大量的编程体操才能将数据拉入和拉出数据库,在数据的两种不同表示之间进行转换。
表格模块将领域逻辑与数据库中每个表一个类组织在一起,并且类的单个实例包含将对数据执行的各种过程。与领域模型 (116) 的主要区别在于,如果您有许多订单,领域模型 (116) 将为每个订单创建一个订单对象,而表格模块将创建一个对象来处理所有订单。