Android 设计模式demo项目
1、Android 单例模式
2、Android Builder模式
3、Android 原形模式(深浅拷贝)
4、Android 工厂模式
5、Android 策略模式
6、Android 状态模式
7、Android 状态模式
8、Android 命令模式
持续更新中...
直至更新完23种模式。
设计模式的六大原则:
总原则:开闭原则,即对扩展开放,对修改关闭。
1 单一职责原则:每个类应该实现单一的职责,否则应该把类拆分。
2 里氏替换原则:任何基类可以出现的地方,子类一定可以出现。它是继承复用的基石,只有当衍生类可以替换掉基类,软件单位的功能不受影响时,基类才能真正被复用,而衍生类也能够在基类的基础上增加新的行为。
3 依赖倒转原则:这是开闭原则的基础,对接口编程,依赖于抽象而不依赖于具体。
4 接口隔离原则:使用多个隔离的接口,比使用单个接口要好。每个接口不存在子类用不到却必须实现的方法,否则要将接口拆分。
5 迪米特法则(最少知道原则):一个实体应当尽量少的与其他实体之间发生相互作用,使得系统的功能模块相对独立。
6 合成复用原则:尽量使用合成/聚合方式,而不是使用继承。
23中设计模式分类:
创建型模式:工厂方法模式 抽象工厂模式 单例模式 建造者模式 原型模式 (简单工厂模式)
结构型模式:代理模式 装饰器模式 适配器模式 外观模式 组合模式 享元模式 桥接模式
行为型模式:观察者模式 责任链模式 模板方法模式 策略模式 迭代子模式 命令模式 状态模式 备忘录模式 访问者模式 中介者模式 解释器模式
温故而知新可以为师矣
理解很重要,记住更重要,以下是总结各个模式知识点记忆要点。推荐配合代码记忆。
-------------------创建型模式------------------
1、单例模式
私有构造方法,使用带有synchronized线程保护的DCL方式,和静态内部类static final变量定义类的方式
2、Builder模式
私有构造方法带参数Buidler,静态内部类Builder,Builder类定义build方法创建类。
3、原形模式
数值拷贝没有深浅拷贝之分,注意引用变量拷贝,如果没有再次加clone方法,默认是浅拷贝。
4、工厂模式
普通工厂模式产品用抽象类定义,抽象工厂产品用接口定义。两者都可以根据产品分别对应定义多个工厂,或者用反射的方式,带入类名参数,用反射统一构建。
-------------------行为型模式------------------
5、策略模式
接口定义同种方法不同实现,每种状态的方法执行结果相同,多用于算法。
6、状态模式
接口定义同种方法不同实现,根据状态不同有不同的方法执行结果。
7、责任链模式
链式结构处理,A判断是否处理,如果处理请求终止,如果不处理传递给B,这样一直传递。形成链式结构
8、命令模式
“行为请求者”与“行为实现者”解耦。多个命令与行为一一对应。