摘要:
组合模式:允许你将对象组合成树形结构来表现“整体/部分”层次结构。组合能让客户以一致方式处理个别对象以及对象组合。(1)组合模式以单一责任设计原则换区透明性。什么是透明性,通过让组件的接口同时包含一些管理子节点和叶子节点的操作,客户就可以将组合和叶子节点一视同仁(2)当你有个对象的集合,他们彼此之间... 阅读全文
摘要:
迭代器模式:提供一种方法顺序访问一个聚合对象中的各个元素,而又不暴漏其内部的表示(1)迭代器模式让我们能够游走于聚合内的每一个元素,我们不应该再使用对象自己进行遍历,而应该用迭代器(2)每个具体的聚合都要实例化一个具体的迭代器,此迭代器能够遍历对象集合 阅读全文
摘要:
模板方法模式:在一个方法定义中定义一个算法的骨架,而将一些步骤延迟到子类中。使得类可以在不改变算法结构的情况下,重新定义算法中的某些步骤。(1)可以在方法中定义一个空的钩子,钩子在抽象类中不做事,而是由子类真正实现钩子功能(2)为了防止子类改变模板方法中的算法,可以将模板方法声明为final 阅读全文
摘要:
外观模式:提供了一个统一的接口,用来访问子系统中的一群接口。外观接口定义了一个更高层的接口,让子系统更容易使用。这可能是最容易理解得一个设计模式了 阅读全文
摘要:
适配器模式:将一个类的接口,转换成客户期望的另一个接口。让原本接口不兼容的类可以合作无间。(1)当需要一个现有的类,而其接口并不符合你的需要时,就需要一个适配器(2)适配器有两种形式:对象适配器和类适配器,后者要用到多重继承 阅读全文