解释器模式 Posted on 2018-01-20 | In 设计模式 Words count in article: 257 字 | Reading time ≈ 1 分钟 解释器模式时一种使用的比较少的行为类设计模式,也比较难以理解,但是在系统设计的时候,解释器模式则被广泛地使用了,比如说在解析文件的时候 这里举一个解释器模式的简单例子 抽象算数运算解释器123p ... Read more »
Builder模式的简单示例 Posted on 2018-01-19 | In 设计模式 Words count in article: 337 字 | Reading time ≈ 2 分钟 Builder模式可以说是最简单的设计模式了,它的原理就是封装set方法,每一步都由Builder对象来完成,使构建过程和部件的表示隔离开来,这里就仿造Android中的AlterDialog中的 ... Read more »
对象内部的策略改变-状态模式 Posted on 2018-01-18 | In 设计模式 Words count in article: 494 字 | Reading time ≈ 2 分钟 状态模式比较常见的是运用在登陆或未登陆的情况下进行,因为在用户登陆与未登陆这两种情况下,对相同的动作会有不同的反应 状态模式的使用一般分为以下几步 定义状态接口以及相应的动作1234public ... Read more »
Java中内置的设计模式-观察者模式 Posted on 2018-01-17 | In 设计模式 Words count in article: 309 字 | Reading time ≈ 1 分钟 观察者模式是jdk中内置的模式,也是使用频率最为广泛的设计模式之一,著名的开源项目如RxJava、EventBus中都能够看到它的影子,甚至在跨进程通信中,我们也经常用到观察者模式 这里只举例一 ... Read more »
命令模式 Posted on 2018-01-17 | In 设计模式 Words count in article: 486 字 | Reading time ≈ 2 分钟 命令模式对简单的调用关系进行解耦,再大多数情况下我们可以使用直接调用的方式来做,但是如果调用比较繁琐,那么使用命令模式不失为一个好选择 这里举一个超级马里奥移动的例子来讲解命令模式 超级马里奥的 ... Read more »
容器中的游标-迭代器模式 Posted on 2018-01-17 | In 设计模式 Words count in article: 350 字 | Reading time ≈ 2 分钟 迭代器模式又称为游标模式,Java中的List遍历就可以使用迭代器,而不需要使用“明显”的遍历算法,下面举一个迭代器模式的小例子 迭代器接口1234public interface Iterat ... Read more »
中介者模式 Posted on 2018-01-15 | In 设计模式 Words count in article: 548 字 | Reading time ≈ 3 分钟 中介者模式主要是解决两个对象间相互作用时产生的耦合 这里举一个简单的电脑组装的例子,电脑中的组件,如CPU、显卡、内存等等都是通过主板进行工作,主板就扮演着一个中介者的角色 抽象中介者类123p ... Read more »
让函数有执行顺序-模板方法模式 Posted on 2018-01-15 | In 设计模式 Words count in article: 332 字 | Reading time ≈ 2 分钟 我们知道在一般情况下,Android中Activity的生命周期如图所示 执行顺序为onCreate()->onStart()->onResume()->onPause()- ... Read more »
复杂对象的创建-工厂方法模式 Posted on 2018-01-13 | In 设计模式 Words count in article: 488 字 | Reading time ≈ 2 分钟 在Android开发中,最常见的工厂模式应该就是Bitmap的创建了,因为Bitmap的创建是分很多种方式的,我们可以使用本地文件来创建Bitmap对象,也可以使用网络上的资源来创建Bitmap对 ... Read more »
创建同一”类别“下的对象-抽象工厂模式 Posted on 2018-01-12 | In 设计模式 Words count in article: 514 字 | Reading time ≈ 2 分钟 抽象工厂模式看起来与工厂方法模式相似,但工厂方法模式构建的是继承同一抽象类的对象,而抽象工厂模式创建出的对象并不是继承于同一基类的,所以,我们无法使用工厂方法模式那样的反射来创建对象 抽象工厂模 ... Read more »