最近总结了一些,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.不要有无用的任何资源或者文件
 
摘自:http://blog.csdn.net/litton_van/article/details/21956859

(装)Android高性能编程基本规范的更多相关文章

  1. (转)Android高性能编程(1)--基础篇

    关于专题     本专题将深入研究Android的高性能编程方面,其中涉及到的内容会有Android内存优化,算法优化,Android的界面优化,Android指令级优化,以及Android应用内存占 ...

  2. (转)Android高性能编程(2)--延迟初始化

    上一篇文章,讲到了很多Android应用开发中需要注意的性能和内存方面的技巧.这一篇文章就是从smali指令级来分析性能优化和内存优化的问题. 如何解决界面启动时间开销大的问题 我们在编写Androi ...

  3. Android_编程开发规范

     Android编程开发规范         原文地址 http://www.jianshu.com/p/9b8aeca9b281 一.约定 Activity.onCreate(),Fragment. ...

  4. [Learn Android Studio 汉化教程]第三章:使用 Android Studio 编程

    [Learn Android Studio 汉化教程]第三章:使用 Android Studio 编程 本章包含如何在 Android Studio 中书写或生成代码. Android Studio ...

  5. Android网络编程概述

    Android网络编程概述 首先,应该了解的几个问题: 1)Android平台网络相关API接口 a) java.net.*(标准Java接口) java.net.*提供与联网有关的类,包括流.数据包 ...

  6. Netty高性能编程备忘录(上)

    http://calvin1978.blogcn.com/articles/netty-performance.html 网上赞扬Netty高性能的文章不要太多,但如何利用Netty写出高性能网络应用 ...

  7. Android开发之——编码规范

    1. 前言 这份文档参考了 Google Java 编程风格规范和 Google 官方 Android 编码风格规范.该文档仅供参考,只要形成一个统一的风格,见量知其意就可. 2. 源文件基础 2.1 ...

  8. Qt on Android 核心编程

    Qt on Android 核心编程(最好看的Qt编程书!CSDN博主foruok倾力奉献!) 安晓辉 著   ISBN 978-7-121-24457-5 2015年1月出版 定价:65.00元 4 ...

  9. [问题解决]《GPU高性能编程CUDA实战》中第4章Julia实例“显示器驱动已停止响应,并且已恢复”问题的解决方法

    以下问题的出现及解决都基于"WIN7+CUDA7.5". 问题描述:当我编译运行<GPU高性能编程CUDA实战>中第4章所给Julia实例代码时,出现了显示器闪动的现象 ...

随机推荐

  1. 高并发情况下分布式全局ID

    1.高并发情况下,生成分布式全局id策略2.利用全球唯一UUID生成订单号优缺点3.基于数据库自增或者序列生成订单号4.数据库集群如何考虑数据库自增唯一性5.基于Redis生成生成全局id策略6.Tw ...

  2. IT行业的一些专业术语

    SDK:SDK(Software Development Kit, 即软件开发工具包 )一般是一些被软件工程师用于为特定的软件包.软件框架.硬件平台.操作系统等建立应用软件的开发工具的集合. 参考:h ...

  3. 全国城市部分js

    var areaJson22 = { "id": "0", "name": "全国", "parentId&q ...

  4. 复制文件夹的方法 .net

    void CopyDirectory(string SourcePath,string DestinationPath) { //创建所有目录 foreach(string dirPath inDir ...

  5. BCCoventUtils全角与半角互相转换

    public class BCConvert { /** * ASCII表中可见字符从!开始,偏移位值为33(Decimal) */ static final char DBC_CHAR_START ...

  6. DESUtil 加密算法

    import java.security.Key; import java.security.Security; import javax.crypto.Cipher; /** *@Title: DE ...

  7. 来自lombok的注解(解决idea中的找不到get,set方法,找不到log的问题)

    今天看代码,发现idea报错,仔细一看调用的get,set方法bean中都没有,但是运行起来却没有问题,这个让我很疑惑.后来发现在类上有一个以前没见过的注解@Data,大概就是因为有他的原因.这个注解 ...

  8. 017——VUE中v-fo指令的使用方法

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  9. ZOJ 3498 Javabeans(找规律)

    Javabeans Time Limit: 2 Seconds      Memory Limit: 65536 KB Javabeans are delicious. Javaman likes t ...

  10. request对象和response对象,什么时候用,具体用哪一个,没有感觉

    request对象和response对象,什么时候用,具体用哪一个,没有感觉