探索应用开发的基础之android源文件的组织

源文件的组织

概观

Android应用应该总是使用一个清晰的文件结构来被整齐的组织起来,这样会使得你的代码更容易阅读。

这有几种对组织你的应用的包结构的最佳实践。


通过类别来组织包

去做这的方式是通过它们的类别将同组的事物放在一起,每个组件放到相应的包中:

  • com.example.myapp.activities - 包含所有的活动 
  • com.example.myapp.adapters - 包含所有的自定义适配器 
  • com.example.myapp.models - 包含所有我们数据的模型
  • com.example.myapp.fragments - 包含所有的碎片
  • com.example.myapp.helpers - 包含所有的帮助类 (支持本APP的自定义代码).
  • com.example.myapp.interfaces - 包含所有的接口

保持这些文件夹在每个应用意味着代码是被逻辑的组织起来的,浏览这些代码将会很愉快。


通过应用的特点来组织包

按特征的包使用包来反应特征集,考虑下面的包结构:

  • com.example.myapp.service.* - 是一个与所有后台相关的服务的包/类的子包
  • com.example.myapp.ui.* - 是一个与所有界面相关的包/类的子包
  • com.example.myapp.ui.mainscreen - 包含一些应用主屏幕相关的类
  • com.example.myapp.ui.detailsscreen - 包含一些与应用的项目详细屏幕的类(译者注:这里我还是要解释一下,这个地方是对某个地方的详细显示,比如我们常看的新闻,mainscreen上只有个标题,点进来detailsscreen就显示详细的新闻信息)

这种特征允许你将 DetailsActivityDetailsFragmentDetailsListAdapterDetailsItemModel 放到同一个包中, 当你使用"项目详情"特征,这会提供一个舒适的导航。

DetailsListAdapter 和 DetailsItemModel 类和/或 它们的属性能被做成私有包, 从而不会裸露在这个包的外部. 在这个包里面你能直接访问它们的属性而不用生成成吨的"setter"方法的模版。

这能使得对象的创建非常的简单直观,而在这个包外面的对象仍可保持不变。

结论:

这时由你来决定上述方法中哪个最适合你的项目。

然而,对一般的Java程序来说,通过特点来封装应用程序被认为是最好的,最有意义的。


参考:


这篇文章主要是将关于包名的问题,很有意义,一般的开发中,我比较常用的是第一种分类法,那样造成了一个功能模块的相关的类在好多个包里面,有的时候为了维护还花费了好大力气去找到各个类,下面按照功能来分,确实是个很好的选择。

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。