
Android之设计模式
文章平均质量分 86
CoorChice
成为你所想相信你要成为的人。
展开
-
Android重拾设计模式系列——简单工厂模式
定义及实质定义 提供一个创建对象实例的功能(接口),而客户调用时无须关心实现过程。属于创建型模式。实质 选择实现。模式图解简单工厂模式UML图 解释: 从上图可以看出: 1. Factory依赖了Api接口和两个接口的实现类; 2. 而Client依赖Factory和Api接口; 3. ImpA和ImpB是Api接口的不同实现; Factory工厂类承担了对象实例的创建,而Cl原创 2016-11-10 16:50:37 · 2162 阅读 · 0 评论 -
Android重拾设计模式系列——外观模式
定义及实质定义 为子系统中的一组接口提供一个一致的界面,这个界面使得子系统更加容易使用。 解释:英雄吹响号角(相当于统一界面,用于发动攻击),命令部队对敌军发动攻击;接下来部队里的各种兵种开始对敌军发动攻击。咕噜兵发起了攻击,狼骑发起了攻击,牛头人发起了攻击,风骑士发起了攻击…号角这个统一界面,把部队发起攻击的事件进行了封装,使得英雄不用去了解发起攻击时,部队中的每个兵种是如何发起攻击的。原创 2016-11-16 12:51:31 · 3952 阅读 · 0 评论 -
Android重拾设计模式系列——单例模式的5种实现
单例模式是我们最常使用,也是最简单的一种模式,主要用于只想系统中存在一个实例的情况,比如某个Manager。定义及实质定义 确保某一个类只有一个实例,而且自行实例化并向系统提供这个实例。 实质 控制实例数量,确保只有一个实例。模式图解单例模式UML图 很直观明了,很简单。下面来看看单例模式的不同实现方案。 饿汉式public class Singleton{ private原创 2016-11-16 12:49:59 · 3171 阅读 · 0 评论 -
Android重拾设计模式系列——工厂方法模式
工厂方法模式和简单工厂模式本质是类似的,都是用来封装产品的创建过程。但它们的实现也有很大的,所以通常被作为两种不同的设计模式看待。 简单工厂模式传送门定义及实质定义 定义一个用于创建对象的接口,让子类决定实例化那一个对象,即使一个类的实现延迟到子类实现。实质 延迟到子类选择实现。 虽然都是选择实现,但工厂方法模式主要用于创建一系列的产品簇(就是相似的东西),而简单工厂法可以创建任何互相原创 2016-11-14 18:45:20 · 2064 阅读 · 0 评论 -
Android重拾设计模式系列——适配器模式
定义及实质定义 将一个类的接口转换为客户希望的另一个接口,适配器模式使原本由于接口不兼容不能一起工作的类,可以在一起工作。实质 类型转换,功能复用。 比较抽象,往下继续看看。模式图解对象适配器解释: 现在有一个单手剑(现有接口),但英雄只能装备法杖(目标接口)。所以需要定义一个单手剑转换器(适配器),把法杖插进去,它属于单手剑系列,但内部其实是一根法杖(持有现有接口)!当英雄使用单手剑原创 2016-11-18 18:22:18 · 1624 阅读 · 0 评论 -
Android重拾设计模式系列——抽象工厂模式
抽象工厂模式和工厂方法模式很相似,都是延迟子类选择创建,但它们的不同点在于: 工厂方法模式专注于创建单个完整的产品,而抽象工厂模式专注于创建构一个完整产品的所有部件。比如说,工厂方法模式创建一把单手剑,而抽象工厂模式需要创建剑柄、剑体、需要用的材料等。它们思想相同,但关注点不一样。工厂方法模式可以理解为宏观,而抽象工厂模式可以理解为微观。 [工厂方法模式传送门] 定义及实质定义 提供创建原创 2016-11-15 15:18:26 · 3248 阅读 · 0 评论 -
Android重拾设计模式系列——生成器模式
定义及实质定义 将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。实质 分离整体构建算法和部件构造。 解释: 打魔兽的时候,玩家就相当于Director指导者,兵营就相当于Builder生成器,而Product产品就是各种兵。玩家指导兵营生产不同的兵种,玩家可以通过自己的一些思考(构建算法)决定什么兵生产几个,开始或终止生产,而兵营只负责去构建这些兵种,并且对玩原创 2016-11-21 18:02:19 · 615 阅读 · 0 评论