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,都可以作为一个大类新建一个包。项目工程定下来之后,就需要规范使用,在平时开发中要培养良好的习惯。
以上,欢迎大家讨论。
在设计项目的工程结构的时候有几个原则:
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,都可以作为一个大类新建一个包。项目工程定下来之后,就需要规范使用,在平时开发中要培养良好的习惯。
以上,欢迎大家讨论。
相关文章推荐
- Android开发实践:用脚本编译Android工程
- Android开发-快速入门-项目结构(中)
- Android 开发尝试总结二:Android版HelloWorld项目文件结构分析
- Android 实践项目开发二
- Android实际开发中的首页框架搭建(一、项目结构搭建)
- Android开发工程目录结构简介
- Vue项目组件化工程开发实践方案
- Android开发之旅:HelloWorld项目的目录结构
- Android开发学习之路--Android Studio项目目录结构简介
- Android开发之旅:HelloWorld项目的目录结构
- Mac android原生工程中潜入react-native混合开发项目搭建
- 一、东软实践项目2-基于android平台的应用开发:实现页面之间的跳转
- Android开发之:第一个应用程序及工程文件及结构详解
- Android开发:Android项目的目录结构&DDMS
- Android开发学习 之 二、Android项目结构
- android开发(如何开发一个可以维护的好项目):四 、项目结构
- [Android] 项目实践之开发规范
- java Web开发基础(一)工程项目文档结构
- 跨平台移动开发实战(十一)------各平台(chrome+android+ios+webos)上的项目结构
- Android零基础开发专题四:Android 项目文件结构