剛接觸Android的時(shí)候,命名都是按照拼音來(lái),所以有的時(shí)候想看懂命名的那個(gè)控件什么是什么用的,就要讀一遍甚至好幾遍才知道,這樣的話,在代碼的審查和修改過(guò)程中就會(huì)浪費(fèi)不少不必要的時(shí)間。
如果就是我一個(gè)人開(kāi)發(fā),一個(gè)人維護(hù)的話還好,可是如果一個(gè)項(xiàng)目是團(tuán)隊(duì)分工合作,這樣讓你的同事去看你的代碼就更加吃力了,因?yàn)榇蠹抑g的編程方式不一樣,所以,在開(kāi)發(fā)過(guò)程中,命名規(guī)范統(tǒng)一尤為重要,最好是團(tuán)隊(duì)中統(tǒng)一好大家命名方法,這樣對(duì)于日后的工作會(huì)輕松很多。
在面試的時(shí)候,審核一個(gè)程序員的編程水平的時(shí)候,命名規(guī)范也是一大標(biāo)準(zhǔn),所以,下面我就總結(jié)下我從網(wǎng)上別人的經(jīng)驗(yàn)和自己的感悟中收集總結(jié)的android命名規(guī)范,希望對(duì)大家有所幫助。
提醒:在命名規(guī)范的統(tǒng)一下,再加上注釋,這樣日后維護(hù)會(huì)高效快捷好多
包名采用域后綴倒置的加上自定義的包名,采用小寫(xiě)字母。包名使用產(chǎn)品的名稱加上模塊的名稱。
格式:
com.ruen.產(chǎn)品名.模塊名稱
示例:
體檢報(bào)告action類 import com.ruen.health.action.ExamReportAction;
用戶信息實(shí)體類 import com.ruen.health.bean.UserInfo;類名和接口使用類意義完整的英文描述,每個(gè)英文單詞的首字母使用大寫(xiě)、其余字母使用小寫(xiě)的大小寫(xiě)混合法。
示例:OrderInformation, CustomerList, LogManager, LogConfig方法名使用類意義完整的英文描述:第一個(gè)單詞的字母使用小寫(xiě)、剩余單詞首字母大寫(xiě)其余字母小寫(xiě)的大小寫(xiě)混合法。
示例:
private void calculateRate();
public void addNewOrder();
- 屬性名使用意義完整的英文描述:第一個(gè)單詞的字母使用小寫(xiě)、剩余單詞首字母大寫(xiě)其余字母小寫(xiě)的大小寫(xiě)混合法。屬性名不能與方法名相同。
示例:
private customerName;
private orderNumber;
private smpSession;
- 常量名使用全大寫(xiě)的英文描述,英文單詞之間用下劃線分隔開(kāi),并且使用 final static 修飾。
示例:
public final static int MAX_VALUE = 1000;
public final static String DEFAULT_START_DATE = "2001-12-08";
- 屬性名可以和公有方法參數(shù)相同,不能和局部變量相同,引用靜態(tài)成員變量時(shí)使用類名引用。
示例:
public class Person
{
private String name;
private static List properties;
public void setName (String val)
{
name = val;
}
public void setProperties (List val)
{
Person.properties = val;
}
}
建議
常用組件類的命名以組件名加上組件類型名結(jié)尾。
示例:
Action類型的,命名以Action結(jié)尾——ExamReportAction
Application 類型的,命名以App 結(jié)尾——MainApp
Frame 類型的,命名以Frame 結(jié)尾——TopoFrame
Panel 類型的,建議命名以Panel 結(jié)尾——CreateCircuitPanel
Bean 類型的,建議命名以Bean 結(jié)尾——DataAccessBean
EJB 類型的,建議命名以EJB 結(jié)尾——DBProxyEJB
Applet 類型的,建議命名以Applet 結(jié)尾——PictureShowApplet如果函數(shù)名超過(guò)15 個(gè)字母,可采用以去掉元音字母的方法或者以行業(yè)內(nèi)約定俗成的縮寫(xiě)方式縮寫(xiě)函數(shù)名。
示例:getCustomerInformation() 改為 getCustomerInfo()準(zhǔn)確地確定成員函數(shù)的存取控制符號(hào),不是必須使用 public 屬性的,請(qǐng)使用 protected,不是必須使用 protected, 請(qǐng)使用 private。
示例:protected void setUserName(), private void calculateRate()