当前位置: 代码迷 >> Android >> Android工程架构的小结
  详细解决方案

Android工程架构的小结

热度:39   发布时间:2016-04-27 23:53:04.0
Android工程架构的总结

1、资源文件的统一管理

建好统一管理的:

string.xml,定义好常用的字符串,例如工程名字,工程包名,网络链接的提示,常见按钮的文本。如果功能模块比较确定,可以分模块来定义,string_base.xml 基础字符串

string_module_name_1 模块一需要的字符串

string_module_name_2 模块二需要的字符串

color.xml,定义好常用的颜色,应用的主色调

style.xml ,定义好base_style,按钮的样式,文本的样式,图片的样式,列表的样式,阴影的样式,等等

anmi,定义好常用的动画,例如淡入淡出

drawable ,一些常用的base图片,常用的shape 、selector等

原则在项目一开始的时候,建立好公共的,基础的资源,这需要对项目的深入理解

在项目的进行过程中,逐步提炼公共的,基础的资源

公共的基础的资源,最好能够用名字区别于其他特定的资源

2、工具类的统一管理

工程里面有一个Util目录,目录下放置了工具类,工具类和所有的业务逻辑都没用关系,它们就是在任何地方都可以使用的工具类。

比图 BitmapUtils、Toast工具类、log工具类、时间工具类等等。

在项目的一开始,将常用的开源工具类放到项目中,做好充分的注释。

在项目的进行过程中,也可以不断的完善工具类。

3、基类的管理

BaseActivity

BaseApplication

BaseConfig

4、对话框的管理

5、异常管理

6、常用的设计结构

Application

common

util

widget

manager

net

     basenet

     netreq

     netrep

exception

db

config

     appconfig

     contant

component

     activity

          baseactivity

          功能1

               activity

               control

               contant

               netreq

               netrep

               adapter

     adapter

     service

     dialog

bean

要领

越到高的级别,就需要这个类的独立性更强,它可以完全脱离业务需求存在

与功能密切相关,离开功能无法独立存在的类,可以放在功能一里面

如果一个网络netreq和netrep只能用于功能一,那么它最好和功能一放在一起,adapter,bean也是一样

如果netreq和netrep需要用于功能一,也需要用于功能二,那么最好抽象共通的地方放在net里,功能一和功能二留子类


http://www.cnblogs.com/qianxudetianxia/archive/2011/06/26/2088503.html

http://blog.csdn.net/leehong2005/article/details/8535306

以下转载:

一些基本原则

下面列出一些通常的原则,我们应当在开发过程中遵循,欢迎补充与指正。 

4.1 提供initialize()方法

在Activity.onCreate()或者View的构造方法中调用,在以后看代码时,人们通常首先会去找initialize()这样的方法。

4.2 封装点击事件

把View的点击事件,提成方法,这样在listener处只是一个方法调用者,一般的事件封装为:onXXXClick(View v)。

4.3 设计一个BaseActivity类

让所有的Activity都继承自BaseActivity类,这样,我们可以做很多有用的事情

  • 定义共通属性
  • 显示共通对话框(Progress dialog)
  • 取得top activity
  • 可以手动管理启动的activity

4.4 设计Application类

  • 存全局数据,比top activity, application context。

4.5 异常处理

  • 报告功能是处理异常的精髓
  • 在finally块中执行清理操作
  • 不要用try-catch-finally来判断业务逻辑
  • 考虑设计自定义的异常类

4.6 标注的使用

  • [email protected]
  • 不使用的方法,不要删除,[email protected],这个做法在维护型的项目中特别有用。

4.7 注册与反注册

  • 局部广播
  • 各种listener
  • Service等

4.8 封装Bitmap操作

我们应当把Bitmap操作封装起来,比如从文件加载,保存,网络下载,动态计算sample size等。有了封装后,我们可以对其集中优化。

4.9 绘制处理

一定要注意绘制方面的东西,不要在onDraw()/onTouchEvent()中创建新对象。 





版权声明:本文为博主原创文章,未经博主允许不得转载。

  相关解决方案