结构设计
a345017062
这个作者很懒,什么都没留下…
展开
-
移动APP中的多级CACHE策略
App运行过程中会产生很多随机、零碎、无固定结构的数据,这些数据重要性、数据量多变,是数据管理的一个难点。这里分享一下笔者这几年常用到的一些多级Cache策略。面前上面提到的这些问题,梳理一下我们要达到的目标:随机存取,数据非结构化,数据按重要性分级。1、为实现随原创 2015-04-23 21:09:04 · 3358 阅读 · 0 评论 -
Android系统设计中的设计模式分析之二
Factory:标准设计模式中存在两种工厂模式,可以参见下面这两个地址,里面有详细的介绍。Factoryhttp://blog.csdn.net/cjjky/article/details/7314118Abstract Factoryhttp://blog.csdn.net/cjjky/article/details/7346893其要点都在于Client只关心抽象工厂和原创 2012-10-10 19:18:11 · 2539 阅读 · 0 评论 -
Android系统设计中的设计模式分析之三
Visitor先贴一个有代码例子,且好理解的文章:http://www.cnblogs.com/shanghaif/archive/2008/12/08/1350417.html再转发一个我认为最形象的解释。如果有一棵继承树,你要使用某个独立的对象遍历这棵树,并且呼叫树上某一个共同的方法,那么你使用iterator。比如这是一棵苹果树,你使用一个摘苹果的杆子把苹果一个一个摘下来,这原创 2012-10-17 16:37:00 · 1743 阅读 · 0 评论 -
Android系统设计中的设计模式分析之四
UML中,不同的对象之间的关系有Generation,Implementation,Dependence,Association,Aggregation,Composition这六种关系。其中,Generation,Implementation,Dependence这个比较容易理解,代表了程序中的类继承、接口实现、参数传递。但其它几个就比较不好理解了。下面是找到的两篇说得比较清楚明白的原创 2012-10-17 17:01:28 · 2605 阅读 · 0 评论 -
聊一下移动开发时MVC中的控制器
控制器,是MVC中的一环,也是手机软件开发中最需要注意的地方,对它的认识不清晰会导致业务层代码的结构混乱,耦合性高。经常见一些进行了几年的老项目代码,如果不是经常的迭代重构,维护起来会非常痛苦。今天重点说一下怎么化解这个问题。其实,每个平台都对Controller有很清晰的描述和定义,只不过我们在使用中容易自己乱了阵脚,而最终导致自己难受罢了。像Android中的Activity、Fragme原创 2014-12-25 11:02:36 · 2006 阅读 · 0 评论 -
移动App开发中的View解耦问题
这几天在做给IOS代码降耦的事情,顺便唠叨几句开发中的View解耦问题。首先,我们先定位一下View的角色:View应该只操心前/后景色,字体属性,布局特性,x/y/width/height等纯视觉属性。不应该操心数据加载、修改,事件响应等Model和Controller关心的事。当然,也包括自定义的View。接下来讨论针对这个角色在实际开发中如何降低View部分耦合对整体架构的冲原创 2015-01-06 12:20:37 · 5230 阅读 · 0 评论 -
论PAGELINK的必要性
通常来说,App内的PageLink机制有几个显著的优点值得我们去做:如,增加运营灵活性,页面开放性,利于效果追踪,反推模块间解耦,降低子工程间的依赖等。客户端总有那么几个核心业务承接页面,是给用户展示信息的主场,也是运营活动、消息推送时的用户承接页。如微博的个人主页,手淘的原创 2015-04-23 16:36:14 · 1777 阅读 · 0 评论 -
Android系统设计中的设计模式分析之一
1、 开闭(OCP)简介:要扩展,不要修改。比如我对外提供了一个接口。现在想更新的话,不要直接修改这个接口,而是提供另外一个接口,然后通知大家在什么时间之前切换到这个新接口。举例:这个设计模式无处不在,Android每次升级都会提供一些新的API,有一些较老的API就会置为deprecated。如从level 1就支持的Service.onStart,在level 5中,已经被Servi原创 2012-08-24 16:41:10 · 4896 阅读 · 1 评论