1. 程式人生 > >Android開發之專案命名規則

Android開發之專案命名規則

  • 命名規範

先介紹兩種命名規則:

駝峰命名法:又稱小駝峰命名法。除了首個單詞首字母小寫除外,其餘所有單詞所有首字母都要大寫。

帕斯卡命名法:又稱大駝峰命名法。所有單詞首字母大寫。

  • 包的命名規範

包名一律小寫

建議採用如下規則:【com】.【公司名/組織名】.【專案名稱】.【模組名】

比如:com.jacksen.mvp.demo。然後在這個目錄下根據業務邏輯進行分層。

常見的包分層結構如下:

com.xxx.xxx.view –> 自定義view 或者是View介面

com.xxx.xxx.activities –> activity類

com.xxx.xxx.fragments –> fragment類

com.xxx.xxx.adapter –> 介面卡相關

com.xxx.xxx.utils –> 公共工具類

com.xxx.xxx.bean –> 實體類

com.xxx.xxx.service –> service服務

com.xxx.xxx.broadcast –> 廣播接收器

com.xxx.xxx.db –> 資料庫操作類

com.xxx.xxx.persenter –> 中間物件

com.xxx.xxx.model –>

資料處理類

類的命名規範

Android中類的命名與JAVA開發採用一致的規範即可。

大駝峰命名法,即所有單詞首字母大寫。

Activity –> xxxActivity.java

Application –> xxxApplication.java

Fragment –> xxxFragment.java

Service –> xxxService.java

BroadcastReceiver –> xxxBroReceiver.java

ContentProvider –> xxxProvider.java

Adapter –> xxxAdapter.java

Handler –> xxxHandler.java

介面 –> xxxInter.java

介面實現類 –> xxxImpl.java

Persenter –> xxxPersenter.java

公共父類 –> BaseActivity.java、BaseFragment.java、- BaseAdapter.java等

util類 –> LogUtil.java

資料庫類 –> BaseSQLiteDBHelper.java

變數的命名規範

採用駝峰命名規則。

Java普通變數:

resultString

userBean

loginPresenter

Android控制元件變數:

loginBtn

inputPwdEt

showNameTv

有些人建議採用【控制元件縮寫】+【控制元件邏輯名稱】的方式,比如btnLogin。不過我個人比較習慣反過來寫,比如loginBtn。與類的命名類似,把邏輯名稱寫在前面。

常用控制元件的縮寫

控制元件 佈局檔案中縮寫 程式碼中縮寫

LinearLayout xxx_layout xxxLLayout

RelativeLayout xxx_layout xxxRLayout

FrameLayout xxx_layout xxxFLayout

TextView xxx_tv xxxTv

EditText xxx_et xxxEt

Button xxx_btn xxxBtn

ImageView xxx_iv xxxIv

CheckBox xxx_chk xxxChk

RadioButton xxx_rbtn xxxRbtn

ProgressBar xxx_pbar xxxPbar

ListView xxx_lv xxxLv

WebView xxx_wv xxxWv

GridView xxx_gv xxxGv

常見單詞的縮寫:

單詞 縮寫

icon ic

background bg

foreground fg

initial init

information info

success succ

failure fail

error err

image img

library lib

message msg

password pwd

length len

buffer buf

position pos

常量命名: 

全部單詞采用大寫,每個單詞之間用“_”分割。

例如:

public static final String API_URL = "http://apis.baidu.com/heweather/weather/free";

 

方法的命名規範

與java開發類似,採用駝峰命名規則。首單詞首字母小寫,其餘單詞首字母大寫。儘量不要使用下劃線。

舉例:

setxxx()

getxxx()

loginxxx()

onCreate()

onDestory()

isxxx() –> 返回值是boolean型別

checkxxx()

Res包的命名規範

全部採用小寫,單詞之間使用下劃線分割。

佈局檔案:

activity_login.xml

fragment_first_tab.xml

item_choose_city.xml

dialog_choose_city.xml

common_footer.xml

popup_xxx.xml

控制元件ID:

上面【常用控制元件的縮寫】表格中基本列出了常用控制元件的ID寫法。

login_btn

input_phone_et

input_pwd_et

login_pbar

drawable目錄下的命名規範

全部單詞小寫,單詞之間採用下劃線分割。

圖示 – > ic_xxx.png –> ic_logo.png

背景圖 –> bg_xxx.jpg –> bg_splash.jpg

selector –> selector_login_btn.xml

 

shape –> shape_login_btn.xml

圖片狀態 –> bg_login_btn_pressed.jpg & - bg_login_btn_unpressed.jpg

anim目錄下的命名規範

單詞全部小寫,單詞之間採用下劃線分割。

fade_in.xml

fade_out.xml

slide_in_from_left.xml

slide_in_from_top.xml

slide_out_to_right.xml

slide_out_to_bottom.xml

編碼規範

程式碼中儘量不要出現中文。註釋和除外。程式碼中通過strings.xml引用來顯示中文。

控制元件宣告放在activity級別,這樣在activity其他地方可以使用。

在一個View.OnClickListener中處理所有的點選事件邏輯,這樣看起來很集中和直觀。

strings.xml中使用%1ssd等實現字串的通配。

佈局檔案中的字型大小,都定義在dimens.xml中。

有關margin和padding的值也都放在dimens.xml中。

介面之間傳值儘量使用intent方式。少用全域性變數。

不建議在佈局檔案中新增點選事件。

資料型別轉換一定要校驗。

使用常量代替列舉。

實體不要在不同模組間共享,但是可以在統一模組下的不同頁面共享。

建議採用左括號與方法名稱在同一行的程式碼格式來進行程式碼的編寫和格式化。貌似左括號在下一行是C#的形式。

業務稍微複雜一些,都有可能提煉一個BaseActivity或BaseFragment出來做為公共父類。

 

類註釋一定要寫,管家的方法也要寫方法註釋。常量儘量寫註釋。

專案中的命名規範和編碼規範,是一個專案Leader前期需要準備的,也是一項必備技能。

制定好了規範,就要遵守,有了統一的規範,專案才好維護,相互之間才好review程式碼,便於開發與維護。