您的位置:首页 > 移动开发 > Android开发

Android开发实践-项目工程结构

2017-03-27 15:56 363 查看
文章内容参考了《App研发录》中的一些观点。

在设计项目的工程结构的时候有几个原则:

1、        层级不要太深,方便查找

2、        有良好的扩展性,并作为规范使用

 

一般来说设计项目结构有两种:

第一种:先根据代码功能划分大类,又在模块中根据功能进行划分

这是外层的结构(部分)

这是module内部的结构

可以看到在module内部的包中有大量跟最外层结构一样的地方。

在实际开发中,我们发现,最重要的是根据activty查找代码,然后再在代码中查找adapter、util等等,所以其实这样太细致的划分是不必要的,使用其来有点眼花缭乱的感觉。

所以我们采取第二种:根据代码功能划分大类,在大类中有必要的时候细分模块

示范:

最后根据我自己工作的经验,设计了如下目录:

 

Activity:这就不用解释了

Adapter 所有的list的适配器

Bean  实体类,也是MVP模式中的model

Consant  常量

Fragment

Interfaces 接口

Network是网络层,一般我们会需要一些base类对网络做封装,如果使用retrofit和rxjava的话,需要用到的converter、Interceptor也放在base中,同时网络的接口我们放在api包里。

如果是使用MVC模式的话,会有一个dao层负责发起网络请求并返回结果。

Presenter 这个包是给MVP模式使用的,接口的具体实现类

Utils 工具包,放各种与业务无关的工具类,为了提高Utils的复用率,有必要进行分类,比如H5相关、Listview相关等

WidgetView 这个是自定义控件,也单独放一个包 ,方便查找和服用

 

还有其他的一些大类,比如service、broadcast,都可以作为一个大类新建一个包。项目工程定下来之后,就需要规范使用,在平时开发中要培养良好的习惯。

以上,欢迎大家讨论。

 

 

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  设计 app 结构 研发