历史关联模式
Historical association pattern
我目前正在研究软件工程模式,我们被要求研究的一个是“历史关联模式”,它指的是福勒的“分析模式”一书中给出的历史映射模式。我们给出的示例如下:
我尝试在网上查找有关如何实施此结构的信息,但没有找到任何有关历史映射关联的信息。这种结构的 code/pseudo-code 示例是什么?
简答
此模式仅包括通过关联 class.
使用一些日期进行关联
完整解释
中间的菱形是员工、日期和金钱之间的三元关联。虚线表示 Salary 是关联 class 并且它还与 Date.
关联
关联 class 通常会使用 tuples/composed class 雇员、日期、金钱和薪水属性来实现。完成的方式可能非常不同:在 Java 中,您将直接引用关联的对象,而在数据库中,您将混合使用 id 和 salary 属性。比这个令人印象深刻的图表简单得多。
有更简单的模型!
这个图很难读(三元关联),很难理解(三元关联中的多重性不是很容易理解),模棱两可(即 Salary 与两个日期关联,从它代表的三元关联和从直接关联?还是只是图形冗余?)。
如果重构为二元关联,将Dare等值对象显示为属性,理解起来会简单很多。
我目前正在研究软件工程模式,我们被要求研究的一个是“历史关联模式”,它指的是福勒的“分析模式”一书中给出的历史映射模式。我们给出的示例如下:
我尝试在网上查找有关如何实施此结构的信息,但没有找到任何有关历史映射关联的信息。这种结构的 code/pseudo-code 示例是什么?
简答
此模式仅包括通过关联 class.
使用一些日期进行关联完整解释
中间的菱形是员工、日期和金钱之间的三元关联。虚线表示 Salary 是关联 class 并且它还与 Date.
关联关联 class 通常会使用 tuples/composed class 雇员、日期、金钱和薪水属性来实现。完成的方式可能非常不同:在 Java 中,您将直接引用关联的对象,而在数据库中,您将混合使用 id 和 salary 属性。比这个令人印象深刻的图表简单得多。
有更简单的模型!
这个图很难读(三元关联),很难理解(三元关联中的多重性不是很容易理解),模棱两可(即 Salary 与两个日期关联,从它代表的三元关联和从直接关联?还是只是图形冗余?)。
如果重构为二元关联,将Dare等值对象显示为属性,理解起来会简单很多。