在刚刚接触java的时候就知道软件设计模式,当时由于刚入门,没有深入理解,所以没有什么心得体会。随着码字时间的增加,体会越来越多。工作多年,就总结一下吧。
设计模式有23种,分为三大类:
创建型模式:工厂方法模式,抽象工厂模式,单例模式,建造者模式,原型模式。
结构型模式:适配器模式,装饰器模式,代理模式,外观模式,桥接模式,组合模式,享元模式。
行为型模式:策略模式,模板方法模式,观察者模式,迭代子模式,责任链模式,命令模式,备忘录模式,状态模式,访问者模式,中介模式,解释器模式。
设计模式六大原则:
开闭原则 对扩展开放,对修改关闭。
里氏代换原则 子类
依赖倒转原则 对接口编程
接口隔离原则 使用多个隔离的接口,降低耦合
迪米特法则 最少知道原则
合成复用原则 尽量使用合成、聚合的方法