Android架構系列-開發規範

Tsy遠發表於2017-09-22

本文介紹了專案裡的各種命名等規範

0 Android架構系列文章

該系列文章會不斷更新Android專案開發中一些好的架構和小技巧

系列一 Android架構系列-基於MVP建立適合自己的架構
系列二 Android架構系列-如何優美的寫Intent
系列三 Android架構系列-開發規範
系列四 Android架構系列-封裝自己的okhttp
系列五 Android架構系列-MVP架構的實際應用

1 目錄規範

  • GloabApp 全域性application
  • RootAct 啟動Activity
  • Base 基礎類 BaseActivity BaseFragment Base...
  • lib 可以放置一些非jar module型別的開原始碼
  • widget 通用自定義控制元件類
  • util 通用工具類
  • xxx(業務模組)
    • model 資料層。網路api介面和快取介面 命名xxxApi xxxCache
    • view 顯示層。(activity fragment adapter)命名 xxxActivity xxxFragment xxxAdapter(也可以再分一層 activity fragment adapter)
    • present 資料處理層。命名xxxPresent

2 書寫規範

  1. 不要將多行程式碼寫在一行裡如:if(condition) do_something
  2. if / while / for 後面,一定要跟大括號
  3. 定義方法時大括號換行,如果是匿名方法,大括號跟方法名一行
  4. 不要連續出現2個以上的空行

3 命名規範

注:modulename為common或者業務模組xxx

3.1 變數、方法命名

  1. 方法命名小駝峰規則如:initView、setData
  2. 全域性變數命名:mDataList
  3. 區域性變數命名:dataList
  4. 常量命名:PAGE_SIZE
  5. 資源變數命名:mBtnLogin

3.2 控制元件字首縮寫

控制元件 字首縮寫
RelativeLayout rl
LinearLayout ll
FrameLayout fl
TextView txt
Button btn
ImageButton imgBtn
ImageView img
CheckBox chb
RadioButton rdb
DatePicker dtPk
EditText edit
TimePicker tmPk
ProgressBar proBar
WebView webVi
ScollView scrollVi
ListView lv
GridView gv
ViewPager vp

3.3 layout中資源id命名

控制元件縮寫+描述

如 img_back、txt_name

3.4 layout命名

  1. activity
    modulenameactivity描述.xml
  2. fragment
    modulenamefragment描述.xml
  3. dialog
    modulenamedialog描述.xml
  4. 抽取出來複用的xml佈局(include)
    modulenameinclude描述.xml
  5. listview item
    modulename_itemlist描述.xml
  6. listview header
    modulename_listheader描述.xml
  7. listview footer
    modulename_listfooter描述.xml
  8. gridview item
    模組_itemgrid描述.xml
  9. widget
    modulenamewidget描述.xml

3.5 資原始檔命名

字首+描述+字尾

字首即為型別

  1. 圖示 ic
  2. 背景 bg
  3. 分割線 div
  4. 按鈕 btn

字尾是狀態,如果沒有就是普通就沒有

  1. 預設圖片 比如載入時的預設頭像背景 default
  2. 按下狀態 pressed/unpressed
  3. 選中狀態 choosed/unchoosed

3.6 drawable命名

狀態+控制元件縮寫+描述

狀態,即drawable型別:

  1. selector
  2. shape等

3.7 string命名

介面+描述
或者common+描述

通常建議把同一個介面的所有string都放到一起

全域性的使用common

結尾

更多文章關注我的公眾號

我的公眾號
我的公眾號

相關文章