Call Us Now! 020-87540245

App开发工程结构搭建:微盘Android代码架构分析

时间:2014-12-15 16:01来源:广州移乐

关于Android架构,因为手机的限制,目前我们觉得也确实没什么大谈特谈的,但是从开发的角度,看到整齐的代码,优美的分层总是一种舒服的享受的。

从艺术的角度看,其实我们是在追求一种美。

本文由移乐信息公司技术总监先分析几个当今比较流行的android软件包,最后我们汲取其中觉得优秀的部分,搭建我们自己的通用android工程模板。

1. 微盘

微盘的架构比较简单,我把最基本,最主干的画了出来:

2011062522381915.png

第一层:com.sina.VDisk:com.sina(公司域名)+app(应用程序名称) 。

第二层:各模块名称(主模块VDiskClient和实体模块entities)

第三层:各模块下具体子包,实现类。

从图中我们能得出上述分析中一个最简单最经典的结构,一般在应用程序包下放一些全局的包或者类,如果有多个大的模块,可以分成多个包,其中包括一个主模块。

在主模块中定义基类,比如BaseActivity等,如果主模块下还有子模块,可以在主模块下建立子模块相应的包。说明一点,有的时候如果只有一个主模块,我们完全可以省略掉模块这一层,就是BaseActivity.java及其子模块直接提至第二层。

在实体模块中,本应该定义且只定义相应的实体类,供全局调用(然而实际情况可能不是这样,后面会说到)。在微盘应用中,几乎所有的实体类是以 xxx+info命名的,这种命名也是我赞成的一种命名,从语义上我觉得xxxModel.java这种命名更生动更真实,xxxModel给我一种太机 械太死板的感觉,这点完全是个人观点,具体操作中以个人习惯为主。还有一点,在具体的xxxInfo,java中有很多实体类中是没有get/set的方 法,而是直接使用public的字段名。这一点,我是推荐这种方式的,特别是在移动开发中,get/set方法很多时候是完全没有必要的,而且是有性能消 耗的。当然如果需要对字段设置一定的控制,get/set方法也是可以酌情使用的。

广州移乐信息有限公司(www.appnios.com)
广州移乐信息科技有限公司主营手机APP开发、移动应用开发、手机客户端开发、手机软件开发、APP、APP开发、APP开发公司、安桌开发、ios开发、APP托管、微信公众平台、APP推广、微信推广、APP定制、APP推广服务。欢迎拨打24小时咨询热线:020-87540245。

0