java编程规范和性能总结有助提高

来源:互联网 发布:android 打开数据库 编辑:程序博客网 时间:2024/05/16 19:22
性能 规范 

性能
--------------------------------规则--------------------------------------
    日志    
规则
            对Debug,Info级别日志输出前必须对当前的调试等级先进行判断
        说明
日志一般都会有不少字符串的处理
如果不是Debug级别就没有必要进行处理    
        示例
            if (logger.debugEnable()) 
{  
logger.debug(“request : ” + request.getMethod());
}
        规则
            对类中日志工具对象logger应声明为static
说明
防止重复new 出logger对象
logger指各种日志工具类
可以是log4j,common log,jdk logger,内部API等
尽管一些logger对LogFactory工厂有一些优化,但是我们也必须防止代码没有必要的运行
    数组
        规则
            数组复制使用使用System.arraycopy(*)
        说明
更好的性能
    集合
        规则
            不要使用循环将集合转为数组
可以使用集合的toArray()方法
        说明
更好的性能
代码更加简洁
    字符串
        规则
            大量字符串的相加应该使用StringBuffer
说明
大量的String相加等于处理性能消耗较多
“大量”一般指
5次“+=”以上
或者在循环中进行字符串+=操作 http://www.52mvc.com
------------------------------建议-------------------------------------
    其他
        API函数
        建议
            尽量使用JDK自带的API函数,不要自己写类似功能的函数
        说明:
JDK自身的函数在可靠性,性能方面一般有更好的表现
大家必须熟练掌握,特别是算法方面的
    IO
        建议
            IO操作流使用有Buffer的功能的类
        说明
更好的性能
没有Buffer的输出
流频繁IO操作
效率反倒低

        建议
public类型的底层函数需对输入参数进行判断
参数不合法应该主动抛出RuntimeException
说明
底层函数必须保证输入参数正确性再进行其他处理
防止后面的代码抛出错误
减少没有必要的后续代码运行
使用RuntimeException
减少了try catch满天飞
并有利于快速定位异常代码
示例
public void doDivide(int a,int b)
{
if (b == 0)
{
throw new IllegalArgumentException(“denominator can’t be zero”); 
}
...
}
http://blog.csdn.net/jhl52771/article/details/8508794

原创粉丝点击