观察者模式是最常用的设计模式之一,【对象之间多对一的依赖关系,当一个对象发生变化时,其会通知所有依赖它的对象】。拿订阅报纸和发行报社打比方,报社采集到news制作新的报纸,派送给订阅的客户,以此把最新的消息告知客户。所以,
出版社 + 订阅者 = 观察者模式。
这种一对多的关系,也即“一个”主题、“多个”观察者能够使得观察者仅仅了解主题推送的消息但不知晓其中的细节,而主题握有观察者列表...
分类:
其他好文 时间:
2014-06-02 23:33:05
阅读次数:
376
每一个应用程序都有一个通知中心,NSNotificationCenter,专门负责协助不同对象之间的消息通信任何一个对象都可以向通知中心发布通知NSNotification,描述自己在做什么。其他感兴趣的对象(Observer)可以申请在某个特定通知发布时(或在某个特定的对象发布通知时)收到这个通知...
分类:
移动开发 时间:
2014-06-02 07:24:48
阅读次数:
241
很多人疑惑代理究竟该什么时候使用下面列举了一些使用代理的地方?对象A内部发生了一些事情,想通知对象B??对象B想监听对象A内部发生了什么事情??对象A想在自己的方法内部调用对象B的某个方法,并且对象A不能对对象B有耦合依赖??对象A想传递数据给对象B??……?以上情况,结果都一样:对象B是对象A的代...
分类:
其他好文 时间:
2014-06-02 07:21:36
阅读次数:
177
所有的移动操作系统都有个致命的缺点:app很容易受到打扰。比如一个来电或者锁屏会导致app进入后台甚至被终止还有很多其它类似的情况会导致app受到干扰,在app受到干扰时,会产生一些系统事件,这时UIApplication会通知它的delegate对象,让delegate代理来处理这些系统事件?de...
分类:
移动开发 时间:
2014-06-02 07:18:57
阅读次数:
205
?UIDevice类提供了一个单粒对象,它代表着设备,通过它可以获得一些设备相关的信息,比如电池电量值(batteryLevel)、电池状态(batteryState)、设备的类型(model,比如iPod、iPhone等)、设备的系统(systemVersion)??通过[UIDevice
cur...
分类:
其他好文 时间:
2014-06-02 07:11:50
阅读次数:
239
装饰者模式是JDK中另一个使用较多的设计模式,上一个是观察者模式(在Swing中大量使用),业内好的API设计无一离不开常见的设计模式,通常我们所说要阅读源码,也是为了学习大牛们的设计思路。————题记
设计模式
观察者模式:定义了对象之间一对多的依赖,这样一来,当一个对象改变状态时,它的所有依赖者都会受到通知并自动更新。
装饰者模式:动态地将责任附加到对象上。若要扩展功能,装饰者提...
分类:
其他好文 时间:
2014-06-02 05:31:47
阅读次数:
234
NSNotificationCenter 较之于 Delegate
可以实现更大的跨度的通信机制,可以为两个无引用关系的两个对象进行通信。NSNotificationCenter 的通信原理使用了观察者模式; 1.
NSNotificationCenter 注册观察者对某个事件(以字符串命名)...
分类:
移动开发 时间:
2014-06-02 01:22:35
阅读次数:
289
个推的使用在Android客户端相对来说使用比较简单,已经提供了sdk Demo,按照文档和Demo配置相关代码就可以。下图为推送的示意图
客户端需要区分通知和透传的使用,根据需求告诉服务端选择不同的模板
服务端注意的东西相对来说比较多:
个推每天的消息推送量数以亿计,统计分析日志时,经常可以从日志规律发现调用方的一些使用误区,今天提几点开发者在使用个推a...
分类:
其他好文 时间:
2014-06-01 10:37:56
阅读次数:
247
本文参考《Android系统源代码情景分析》,作者罗升阳。
一、Binder库(libbinder)代码:
~/Android/frameworks/base/libs/binder
----BpBinder.cpp
----Parcel.cpp
----ProcessState.cpp
--...
分类:
其他好文 时间:
2014-06-01 06:39:01
阅读次数:
1479