第八、九章
发现不同算法块中的相似部分:
例如制作咖啡和泡茶很相似,只是细节不同,将相同的部分抽出来,放进一个基类中
设计模式
模板方法模式 - 在父类的方法中定义算法的基础骨架,将一些需要犹豫的步骤延迟到子类中实现,子类就可以在不改变通用的整体算法的情况下去灵活的实现自己的某些步骤。
迭代器模式 - 提供一种方法顺序去访问聚合对象的各个元素,而不用关心内部的数据结构。组合模式 - 允许你将对象组成树形结构来表现整体或部分的层次结构,组合能让客户以一致的方式处理个别对象和对象组合。
模版方法的类图;
迭代器
组合模式可以提供一个结构,可以同时包容个别对象或组合对象。
组合模式允许客户对个别对象以及组合对象都是一视同仁的。
组合模式结构内的任意对象称为组件,组件可以是组合,也可以是叶节点。