装饰者模式:包装一个物件,以提供新的行为。
适配器模式:封装物件,并提供不同的界面。
模板方法模式:由子类决定如何实现一个算法中的步骤。
工厂方法模式:由子类决定要创建哪个类别的实体。
单件模式:确保有且只有一个物件被创造。
策略模式:封装可以互换的行为,并使用委托来决定要使用哪一个。
组合模式:客户用一致的方式处理物件集合和类别物件。
状态模式:封装了基于状态的行为,并使用委托在行为之间切换。
迭代器模式:在物件的集合之中游走,而不是暴露集合的实现。
外观模式:简化一群类的界面。
抽象工厂方法:允许客户创建物件的家族,而无需指定他们的具体类。
观察者模式:让物件能够在状态改变时被通知。
代理模式:包装物件,以控制该物件的访问。
命令模式:封装请求成为物件。