通过Java源码分析初探观察者模式(一)

源码中,起关键性作用的就是vector和changed,在observable实例化的时候,就初始化了一个空的vector,可以通过vector添加和移除vector操作后,当observable发生改变时,通过changed去判断是否通知,在我们的上述示例代码中使用setChanged(),主要是因为第一次加入的时候,不会去调用observer的update方法,也就是changed为false,当changed为...
阅读(4929) 评论(3)

通过MVC与MVP的对比,简述单一职责原则

本文将通过MVC与MVP模式分析,循序渐进的讲述单一职责原则。MVC MVP 通过上述两张图可以很明显的看出MVP在MVC的基础上进行解耦,再次不做多余的分析,先简单看一个例子,点击按钮后,从0到1000进行相加,得到结果后先赋值给model,再把model的值在textview上显示。public class MainModel { public int value; }/**...
阅读(994) 评论(1)

以Android源码分析初识UML(一)

前几天在看设计模式,每次看到UML的时候就是一头雾水,不懂那些条条杠杠是什么东东,没办法,既然踏上软件开发这条不归路,我已经没有后退和后悔的余地了,除了搬运代码,不知道还有什么生存能力,对于踏上不归路的坎坷,后面想详细写篇帖子来讲述,都是眼泪。。。对于接触Android不久的小伙伴,看到这张图可能会有点懵逼了,其实没什么的,打开源码后,这些都是基础,几个继承关系而已,或者搞过activity和con...
阅读(1836) 评论(2)

命令模式在Android实际场景中运用

**命令模式(Command Pattern),是行为型模式之一。在日常生活和开发过程中,这是一个非常常见的设计模式,比如我们电脑关机这个操作,我们只需要点击关机键便可以实现关机,内部是通过什么进行关机的,我们不需要去知道,计算机会帮我们实现这个功能。** 优点:  (1)比较容易地实现一个命令队列。  (2)比较容易将队列记入日志。  (3)请求者和实现者通过接口进一步解耦。  (4)可以容易地实...
阅读(1621) 评论(1)

OKHTTP的单例和再封装

/** * Created by zm on 16-2-1 * okhttp的再封装,对于2.x版本,3.x版本将原有对okhttpclient配置 * 改成了builder模式配 * 置,对于超时、代理、dns,okhttp已经做好了配置, * 若不需要特殊配置,可以跳过 */ public class OkHttpUtil { private static OkHttpCli...
阅读(3432) 评论(0)
    个人资料
    • 访问:102726次
    • 积分:1564
    • 等级:
    • 排名:千里之外
    • 原创:38篇
    • 转载:0篇
    • 译文:0篇
    • 评论:164条
    QQ交流群

    Android路上

    611566797
    我的公众号
    博客专栏
    文章分类