前言
设计模式就是前人总结起来的软件设计的经验,只要是为了保证代码的维护性即可读性以及规范性,合理使用设计模式可以帮助程序高内聚,低耦合,可维护性,可扩展性,重用性,灵活性都得以提升。
相关代码地址:Github
首先设计模式的七大原则:
单一职责:一个类应该只负责一项职责。
接口隔离:一个类对另一类的依赖应该建立在最小接口上。例如类A依赖类B中方法1,但是类B中有十个方法,我们需要抽象出一个接口只包含Method1,让类A通过接口去依赖类B
依赖倒转:高层模块不应该依赖底层模块。抽象不应该依赖细节,细节应该以来抽象,其实就是面向接口编程
里氏替换:子类中蒋亮不要重写父类的方法,继承本来就会让两个类耦合性增强,如需重写父类方法,在适当情况下,可以考虑通过聚合,组合,依赖来解决问题
开闭原则:对外扩展开放(对于提供方),对修改关闭(对使用方)
迪米特法则:最少知道原则,一个类对自己依赖的类知道的越少越好,目的就是为了降低对象之间的耦合
合成复用原则:在软件复用时,要尽量先使用组合或者聚合等关联关系来实现,其次才考虑使用继承关系来实现
设计原则的核心就是:
我们需要京可能找出应用中可能会发生变化之处,把他们进行独立,不要和那些不需要变化的代码混在一起
针对接口编程
努力做到交互对象之间的松耦合
概要
设计模式共分为三种类型,共23种:
创建型模式:单例模式,抽象工厂模式,原型模式,建造者模式,工厂模式
结构型模式:适配器模式,桥接模式,装饰模式,组合模式,外观模式,享元模式,代理模式
行为模式:模板方法模式,命令模式,访问者模式,迭代器模式,观察者模式,中介模式,备忘录模式,解释器模式,状态模式,策略模式,职责链模式