1.多用组合,少用继承 2.针对接口编程,不针对具体实现编程 3.为交互对象之间的松耦合设计而努力 4.对扩展开放,对修改关闭 5.依赖抽象,不要依赖具体类 1.策略者模式 2.观察者模式 3.装饰者模式 4.抽象工厂模式 5.工厂方法模式 相关文章: