微盘
2016-05-02 14:02
302 查看
第一层: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方法也是可以酌情使用的。
第二层:各模块名称(主模块VDiskClient和实体模块entities)
第三层:各模块下具体子包,实现类。
从图中我们能得出上述分析中一个最简单最经典的结构,一般在应用程序包下放一些全局的包或者类,如果有多个大的模块,可以分成多个包,其中包括一个主模块。
在主模块中定义基类,比如BaseActivity等,如果主模块下还有子模块,可以在主模块下建立子模块相应的包。说明一点,有的时候如果只有一个主模块,我们完全可以省略掉模块这一层,就是BaseActivity.java及其子模块直接提至第二层。
在实体模块中,本应该定义且只定义相应的实体类,供全局调用(然而实际情况可能不是这样,后面会说到)。在微盘应用中,几乎所有的实体类是以xxx+info命名的,这种命名也是我赞成的一种命名,从语义上我觉得xxxModel.java这种命名更生动更真实,xxxModel给我一种太机械太死板的感觉,这点完全是个人观点,具体操作中以个人习惯为主。还有一点,在具体的xxxInfo,java中有很多实体类中是没有get/set的方法,而是直接使用public的字段名。这一点,我是推荐这种方式的,特别是在移动开发中,get/set方法很多时候是完全没有必要的,而且是有性能消耗的。当然如果需要对字段设置一定的控制,get/set方法也是可以酌情使用的。
相关文章推荐
- 码农小汪-Spring MVC url路径,请求方法限定
- container_of 宏、offsetof 宏 分析
- 9.2 JavaScritp:为数据带来生命-数组对象
- 基于InstallShield2013LimitedEdition的安装包制作
- SlidingMenu
- linux基础(3)--可用实验环境配置--RHEL6.5
- java中的线程问题
- pulltorefresh+asncyhttp
- Android Studio 你需要掌握的Debug技巧(上)
- c++基础回顾
- 常见异常
- 对“视觉机器学习20讲配套仿真代码”的研究心得---Adaboost(三)
- alsa调用
- 第十一周项目1.3增加圆柱类求圆柱的表面结和体积
- Android权限
- [Nutch]Nutch重要命令使用说明
- 0502团队项目 SCRUM团队成立
- handler机制
- 国内maven库
- hdu 3068 最长回文