【codeview】初上戰場,整頓妝容

1 類上註釋:

/**
 * 業務處理分發類
 * 簡單說明
 * @author name
 * @since 2013-9-22
 * @version 1.0
 */
public class BsController {}

2 方法註釋

2.1方法頭註釋

/**
	 * 加法運算
	 * 1 獲取操作數、操作符
	 * 2 相加 
	 * 3 返回結果
	 * @author name 
	 * @param leftNum:左操作數;rightNum:右操作數 說明每個參數的由來和去向、作用
	 * @param sum 相加結果
	 * @return sum:String 返回結果
	 */
	public String add(leftNum,rightNum) {}

說明:

(1)編輯myeclipse註釋模板

(2)使用alt+shift+j 來進行快捷註釋

2.2擴展註釋

2.2.1方法內常量註釋

(1)常量:在常量上,以/** */註釋

/**註釋內容*/
	public static final String ITEM1 = "item1";
	
	/**註釋內容*/
	public static final String ITEM2 = "item2";
如果過多的話可以互相之間空一行;

如果常量的值爲可分割,帶有前綴的部分組成,例如

public static final String ITEM1 = "TEST_item1";

則不要將前綴寫死,重新定義一個變量,用來存儲前綴或組成部分;

String qianzhui = "Test";

public static final String ITEM1 = qianzhui+item1;

這裏使用的拼音不規範,僅作爲示範使用;

(2)變量註釋:

如果該變量是通過其他方法得到的,比如有一方法obtainResult()可以返回計算結果;則如下:

public static void execBs(){
		String result;//聲明計算結果
		result = obtainResult();//獲取結果
	}
	public static String obtainResult(){
		return "10";
	}
如果方法內使用到,且不能通過其他方法返回的,使用new來聲明;

如果該變量是外部引用變量,則在變量上方註釋使用@link 指向它所聲明的類、方法;該方式一般用於複雜的組件拆分中;

2.3查找某一變量有無被使用

(1)在當前java文件中選中該變量,使用ctrl+K

(2)選擇該變量,使用ctrl+alt+H

(3)在項目下,ctrl+H 選擇File Search標籤,在文件級別中查找;


2.4 註釋標明文檔

代碼中涉及遵循編碼規範的,比如某個字段,使用一種數字編碼,該編碼有專門的文檔來描述;那麼在給該字段註釋時,表明文檔存儲路徑;

該條適用於所有具有文檔規範的類、方法、字段等;

3 日誌記錄logger使用

(1)在項目中非不得已不使用syso來作爲調試手段;統一使用logger.info logger.error等輸出

(2)對於異常,在catch後 必須先記錄異常logger.error(e) 再處理異常

(3)(懶得導入logger了)

if(loggerDebug) logger.debug(test());和logger.debug(test());區別

前一種,如果開啓調試模式,則會運行debug中的test()函數,且有多少線程調用,則會運行多少次test();如果關閉調試模式,則不會運行裏面的debug方法

後一種,無論是否開啓調試模式,都會運行內部函數,導致性能下降的一方面原因;

4 構造函數的使用

在構造函數上註釋,說明爲什麼要用、在哪用該構造函數;

5 循環

(1)MAP循環使用增強型for循環

HashMap<String,String> map = new HashMap<String, String>();
		
		for(String key:map.keySet()){
			//循環取值
		}
(2)while(值)改用for循環

int i = 0;//該種方式會造成循環標誌變量泄露
		while(i<10){
			//操作
			i++;
		}
		//j僅在for中有效,無泄露問題
		for(int j=0;j<10;){
			//操作
			j++;
		}

6 判斷

(1)斷言

當某個變量不允許爲空的時候,即不允許發生的事情用斷言;

(2)if-else邏輯判斷

當欲判斷的變量允許可能爲空、可能有值的情況,使用if-else

7 對於使用對象

如果所用的不是java原生的,最好在“使用現場”直接使用,不要將其聲明爲全局變量;

如果是原生的,則要考慮其線程是否安全,背後是否有複雜操作;

8 判斷一個對象是否爲重量級

(1)背後是否爲非靜態代碼

(2)有多少臨時生成的變量、屬性

(3)後面引用了多少第三方組件

如果必須使用,考慮資源回收問題;



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章