基本命名規(guī)范 Java 程序有兩類注釋:實現(xiàn)注釋(implementationcomments)和文檔注釋(document comments)。實現(xiàn)注釋是使用/*...*/和//界定的注釋。文檔注釋(被稱為"doc comments")由/**...*/界定。文檔注釋可以通過JavaDoc工具轉(zhuǎn)換成HTML 文件。 2.5.1文件注釋所有的源文件都應(yīng)該在開頭有一個注釋,其中列出類名、版本信息、日期和版權(quán)聲明。 如下: /* * 文件名 * 包含類名列表 * 版本信息,版本號 * 創(chuàng)建日期 * 版權(quán)聲明 */ Eclipse中的配置方式: file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtmlclip1/01/clip_image004.gif 需要配置的注釋格式如下: /** * @title:${file_name} * TODO包含類名列表 * Copyright (C) Shenzhen Futuo TechnologyCo.Ltd.All right reserved. * @version:v1.0,${date} */ ${filecomment} ${package_declaration} ${typecomment} /**@name ${type_name} * @description * @author max * @DATE ${date} */ ${type_declaration} 2.5.2類注釋每一個類都要包含如下格式的注釋,以說明當(dāng)前類的功能等。 /** * @name 類名 * @author 原作者 * @description實現(xiàn)的主要功能。 * @date創(chuàng)建日期 * 修改者,修改日期,修改內(nèi)容。 */ Eclipse中的配置方式: file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtmlclip1/01/clip_image006.gif 2.5.3方法注釋每一個方法都要包含 如下格式的注釋 包括當(dāng)前方法的用途,當(dāng)前方法參數(shù)的含義,當(dāng)前方法返回值的內(nèi)容和拋出異常的列表。 /** * 方法的一句話概述 * 方法詳述(簡單方法可不必詳述) * @param s 說明參數(shù)含義 * @return 說明返回值含義 * @throws IOException 說明發(fā)生此異常的條件 * @throws NullPointerException 說明發(fā)生此異常的條件 */ 2.5.4類成員變量和常量注釋成員變量和常量需要使用java doc形式的注釋,以說明當(dāng)前變量或常量的含義 /** *XXXX含義 */ 2.5.5其他注釋方法內(nèi)部的注釋 如果需要多行 使用/*…… */形式,如果為單行是用//……形式的注釋。不要在方法內(nèi)部使用 java doc 形式的注釋“/**……**/”,簡單的區(qū)分方法是,java doc形式的注釋在 eclipse中為藍色,普通注釋為綠色。 2.5.6 XML注釋如果當(dāng)前l(fā)ayout 或資源需要被多處調(diào)用,或為公共使用的layout(若common_list_item),則需要在xml寫明注釋。要求注釋清晰易懂。 2.6編程規(guī)范2.6.1 方法 一個方法盡量不要超過30行,如果方法太長,說明當(dāng)前方法業(yè)務(wù)邏輯已經(jīng)非常復(fù)雜,那么就需要進行方法拆分,保證每個方法只作一件事。 2.5.2 參數(shù)和返回值 一個方法的參數(shù)盡可能的不要超過4個! 如果一個方法返回的是一個錯誤碼,請使用異常??! 盡可能不要使用null,替代為異常或者使用空變量如返回List則可以使用Collections.emptyList() 2.5.3 神秘的數(shù)代碼中不允許出現(xiàn)單獨的數(shù)字,字符!如果需要使用數(shù)字或字符,則將它們按照含義封裝為靜態(tài)常量!(for語句中除外) 2.5.4 控制語句判斷中如有常量,則應(yīng)將常量置于判斷式的右側(cè)。如: if ( true == isAdmin())... 盡量不使用三目條件的嵌套。 所有if 語句必須用{}包括起來,即便是只有一句: if (true){ //do something...... } if (true) i = 0; //不要使用這種 對于循環(huán): //不推薦方式____________________________________________ while(index < products.getCount()){ //每此都會執(zhí)行一次getCount()方法, //若此方法耗時則會影響執(zhí)行效率 //而且可能帶來同步問題,若有同步需求,請使用同步塊或同步方法 } //推薦方式______________________________________________ //將操作結(jié)構(gòu)保存在臨時變量里,減少方法調(diào)用次數(shù) final int count = products.getCount(); while(index < count){ } |
|