良好的开发习惯

向更高层次迈进!养成良好的习惯与技巧.结合本人的经验和理解,总结出了以下良好的开发习惯和技巧,向更高层次迈进!本人会经常更新此贴,
1.注释
为代码加注释,是一个良好的习惯。随着时间的流逝,有的时候,自己加的注释可能都记不清楚了。为代码加注释,既是为了自己,也是为了他人。笔者在接管同事代码的时候,就出现过“无注释”的代码段,维护起来真是痛苦之极。
2.知识管理
把开发中,解决的难题,小demo,小心得,都沉淀下来。为以后开发提供宝贵的参考。所谓:“公预善其事,必先利起器”,“磨刀不误砍柴工”。好多人干了若干年开发,仍然是在重复以前的的工作,就是因为没有把知识管理、积累起来。可以发发论坛,自己整理笔记等等,这样是不是更好呢?
3.格式化代码
使用Eclipse或者其他基于eclipse开发的收费开发工具的朋友都知道,ctrl+shift+f可以格式化代码,自动为你对齐。这也是个很良好的习惯。这样代码直观看上去,会很舒畅。方便自己,方便他人。
4.良好的命名规范和编程规范
随着软件工程和软件开发技术的发展,现在行业内出现了许多命名和编程规范。但有些规范还是通用的。1)驼峰式命名;2)英文单词命名,尽量避免中文拼音和无意义的命名;3)不要使用goto语句;针对JAVA语言,更有一些特定的命名规范:
1) 包名:简单,小写
2) 类,接口:首字母大写
3) 方法:首字母小写,驼峰式命名
4) 常量:全部大写,单词之间用下划线分隔
5) 局部变量:一般都是单词首字母或者缩写
6)……
5.闹钟定时休息
身体是革命的本钱,有的时候短短10分钟的休息,可以大大的提高你的工作效率并缓解你的压力。上午10点,下午15点左右,是不是该休息休息呢?即使是晚上奋战,那更应该注意平时规律的休息。
6.懂得分享和感恩
在论坛上看到别人写的好帖,要懂得感恩;自己有了心得体会,要懂得与人分享.这样才能构造一个良好的学习交流环境.
7.编程小技巧
有时候在面试的时候,你回经常被测试去做非常easy的小程序?但你知道其中的奥妙有多少呢?其实一个是看你的编程思路,一个是看你的代码规范,更重要的是看你是否老练。
1)空字符串判断
String obj = null;
System.out.println("".equals(obj)); //推荐,老程序员都会这么写来回避NullPointerException
System.out.println(obj.equals("")); //空指针异常

2)指定具体的Exception,而不是所有异常的捕捉方式都一样。如果在面试中,考官让你写个非常非常简单的JDBC连接程序,你会觉得这么easy的程序还考我?其实你并没有领会到其中的奥妙,字你写完的程序和下面的对比之后,你会得到什么启发呢?是不是具体的Exception捕捉,看上去程序逻辑更清晰一些呢?

import java.sql.*;

public class TestJDBC {

public static void main(String[] args) {
   ResultSet rs = null;
   Statement stmt = null;
   Connection conn = null;
   try {
    Class.forName("oracle.jdbc.OracleDriver");
    //new oracle.jdbc.driver.OracleDriver();
    conn = DriverManager.getConnection("jdbc:oracle:thin:@192.168.0.1:1521:TEST", "scott", "tiger");
    stmt = conn.createStatement();
    rs = stmt.executeQuery("select * from dept");
    while(rs.next()) {
     System.out.println(rs.getString("deptno"));
     System.out.println(rs.getInt("deptno"));
    }
   } catch (ClassNotFoundException e) {
    e.printStackTrace();
   } catch (SQLException e) {
    e.printStackTrace();
   } catch (Exception e) {
    e.printStackTrace();
   }
   finally {
    try {
     if(rs != null) {
      rs.close();
      rs = null;
     }
     if(stmt != null) {
      stmt.close();
      stmt = null;
     }
     if(conn != null) {
      conn.close();
      conn = null;
     }
    } catch (SQLException e) {
     rs = null;
     stmt = null;
     conn = null;
     e.printStackTrace();
    }
   }
}

}

3)字符串拼接尽量使用 StringBuffer 的append方法来拼接。而直接使用”+”来连接String类型。会增加内存和CPU的开销。String字符串拼接的原理如下
String str1 = “a”;
String str2 = “b”;
str1 = str1 + str2;
内存上,他先会开辟出一个新的内存空间,存放str3 = str1+str2,然后再把str3的引用交给str1.如果使用StringBuffer呢?则是在str1后面“接”上的,完成过程只后str1,str2俩个对象。
CPU上,想必写个循环1000次的拼接程序,大家就会明显的看出来吧。下面代码,运行看看吧。
//1秒=1000毫秒
public class Test {
public static void main(String[] args) {
   String str = "";
   StringBuffer sb = new StringBuffer();

   long start = 0L;
   long end = 0L;
   // 使用String
   start = System.currentTimeMillis();
   for (int i = 0; i < 9999; i++) {
    str = str + i;
   }
   end = System.currentTimeMillis();
   System.out.println("使用String:" + (end - start) + "毫秒");

   // 使用StringBuffer
   start = System.currentTimeMillis();
   for (int i = 0; i < 9999; i++) {
    sb.append(i);
   }
   end = System.currentTimeMillis();
   System.out.println("使用StringBuffer:" + (end - start) + "毫秒");
}
}

4)尽量减少IO操作,因为IO操作对计算机而言是最耗费资源的操作之一.好多朋友喜欢在调试程序的时候用System.out.println();而在项目发布的时候,没有删除这些打印语句,造成程序的cmd处混乱,而且程序运行效率低下。即使使用了,在当天,就应该及时“清理”这些打印,为别人、为自己缔造一个干净,可读性强的代码环境。下面就是一个打印浪费资源的例子。试想一下,如果你的循环数据处理量非常大,上千万条的记录。你是不是要想一下效率问题呢?
//1秒=1000毫秒

public class Test {
public static void main(String[] args) {
   StringBuffer sb;

   sb = new StringBuffer();

   long start = 0L;
   long end = 0L;
   // 使用println
   sb = new StringBuffer();
   start = System.currentTimeMillis();
   for (int i = 0; i < 9999; i++) {
    sb.append(i);
    System.out.println(i);
   }
   end = System.currentTimeMillis();
   System.out.println("使用String:" + (end - start) + "毫秒");

   // 没有println
   sb = new StringBuffer();
   start = System.currentTimeMillis();
   for (int i = 0; i < 9999; i++) {
    sb.append(i);
   }
   end = System.currentTimeMillis();
   System.out.println("使用StringBuffer:" + (end - start) + "毫秒");
}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值