Android中常用的设计模式
1,概述
设计模式,Design Pattern,是人们用程序解决现实中问题的一种方法,是一套被反复使用,多数人知晓的,经过分类编目的,代码设计经验的总结。
2,设计模式的分类
创建型模式,共5种:工厂方法模式,抽象工厂模式,单例模式,建造者模式,原型模式。
结构型模式,共7种:适配器模式,装饰器模式,代理模式,外观模式,桥接模式,组合模式,享元模式。
行为型模式,共11种:策略模式,模板方法模式,观察者模式,迭代子模式,责任链模式,命令模式,备忘录模式,状态模式,访问者模式,中介者模式,解释器模式
3,设计模式的六大原则
开闭原则 (Open Close Principle)
开闭原则就是说对扩展开放,对修改关闭。在程序需要进行拓展的时候,不能去修改原有的代码,实现一个热插拔的效果.为了使程序的扩展性好,易于维护和升级,需要使用接口和抽象类
里氏代换原则 (Liskov Substitution Principle)
面向对象设计的基本原则之一,任何基类可以出现的地方,子类一定可以出现
依赖倒转原则 (Dependence Inversion Principle)
开闭原则的基础,依赖于抽象而不依赖于具体
接口隔离原则 (Interface Segregation Principle)
使用多个隔离的接口,比使用单个接口要好.降低依赖,降低耦合.
迪米特法则 (Demeter Principle)
(最少知道原则),为什么叫最少知道原则,就是说:实体与实体之间减少相互作用,使各功能模块相对独立.
合成复用原则 (Composite Reuse Principle)
尽量使用合成/聚合的方式,而不是使用继承.
4,常用的几种设计模式
工厂方法模式 (Factory Method)
普通工厂模式,就是建立一个工厂类,对实现了同一接口的一些类进行实例的创建
多个工厂方法模式,是普通工厂方法模式的改进,多个工厂方法模式是提供多个工厂方法,分别进行实例的创建
静态工厂方法模式,是将多个工厂方法模式里的方法置为静态的,不需要创建工厂实例,直接调用即可
抽象工厂模式(Abstract Factory)
抽象工厂模式,就是创建多个工厂类,这样一旦需要增加新的功能,直接增加新的工厂类就可以了,不需要修改之前的代码
模板方法模式(Template Method)
模板方法模式,就是:一个抽象类中,有一个主方法,再定义1...n个方法,可以是抽象的,也可以是实际的方法,定义一个类,继承该抽象类,重写抽象方法,通过调用抽象类,实现对子类的调用
观察者模式(Observer)
当一个对象变化时,其它依赖该对象的对象都会收到通知,并且随着变化,对象之间是一种一对多的关系.