Android高性能编程基本规范

最近总结了一些,Android应用开发中,需要注意的一些事项,与大家分享


1.尽量少的声明全局变量

2.声明全局静态变量,一定要加final声明

3.声明非静态的全局变量,最好不要初始化任何值,在使用到的地方,在进行初始化

4.函数中若干次使用全局变量,应该将全局变量赋值给本地变量,然后直接使用本地变量

5.能用Int,不要使用浮点数 

6.能用乘法不用除法

7.尽量避免使用geter和setter方法

8.在Activity的onCreate函数中,尽量做少的事。

9.在Activity中声明的静态数组或者静态代码块,重构到单独的一个类里。

10.布局文件要尽可能的优化,减少布局的解析时间 。 尽量减少布局的嵌套层次

11.Activity启动后开始进行异步线程的加载,最好delay一下。再开启线程

12.对于存在于集合中的Bean对象,尽可能少的声明变量。能用int 就不要用long.声明的string等复杂变量,最好不要进行初始化。

13.使用线程,一定要给它传一个名字,然后需要定义线程的优先级

14.在使用集合的时候,优先选择SparseArray。

15.尽量避免使用枚举

16.工具方法尽量写成是静态方法

17.线程间同步尽量使用开销小的同步锁

18.在使用集合类的时候,如果已知数据的规模,在初始化的时候,就设定好默认大小。

19.私有内部类访问外部类的私有变量,要将变量修改为包继承权限

20.对于开销大的算法,且不止是执行一次的,要使用缓存策略

21.避免在绘制或者解析布局的时候,分配对象。例如onDraw方法

22.不要给布局写无用的参数,例如RelativeLayout,写layout_weight属性

23.尽量减少布局的嵌套层数。例如包含一个ImageView和TextView的线性布局,可以用CompoundDrawable的TextView来代替

24.尽量用Android提供的SparseArray来代替HashMap

25.如果LinearLayout用于嵌套的layout空间计算,它的android:baselineAligned设置为false,可以加速layout计算

26.用FloatMath代替Math

27.尽量避免嵌套的使用layout_weight,那样会影响执行效率

28.如果为rootView设置了背景,那么会先用Theme指定的背景绘制一遍,然后才用指定的背景绘制,这叫做"overdraw",可以通过theme的background为null来避免

29.不要有无用的任何资源或者文件
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值