
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
1.5.3 层次结构的作用
另一种增加单块信息的语义内容的方法,是在复杂的软件系统中显式地组织类和对象层次结构。对象结构很重要,因为它展示了不同的对象之间如何通过一些交互模式进行协作,我们把这些交互模式称为“机制”。类结构也同样重要,因为它强调了系统中的公共结构行为。因此,我们不必去研究某片植物叶子上的每个光合作用细胞,只要研究一个这样的细胞就行了,因为我们预期所有的其他细胞都会表现出相似的行为。虽然我们把一类对象的每个实例作为不同的实体,但是我们可以假定同类对象的所有其他实例都具有同样的行为。通过将对象分成具有相关抽象的组(例如,植物细胞与动物细胞),我们明确地区分了不同对象的共同属性和特有属性,这又进一步帮助我们掌握它们内在的复杂性[39]。
确定复杂软件系统中的层次关系通常并不容易,因为这要求在许多对象之中发现模式,每个对象都可能拥有大量复杂的行为。但当我们整理出这些层次结构之后,复杂系统的结构以及我们对它的理解都得到了极大的简化。第3章将详细讲解类和对象层次结构的实质,第4章将描述帮助我们确定这些模式的技术。