最佳實踐之Android代碼規范。
命名規范
包命名規范
采用反域名命名規則,包名全部小寫,連續的單詞隻是簡單地連接起來,不使用下劃線,一級包名為com,二級包名為xxx(可以是公司域名或者個人命名),三級包名根據應用進行命名,四級包名為模塊名或層級名。如:
com.isa.crm.activity|
com.isa.crm.adapter
JAVA類命名規范
JAVA類命名規范
采用大駝峰式命名法,盡量避免縮寫,除非該縮寫是眾所周知的,比如HTML,URL,如果類名稱包含單詞縮寫,則單詞縮寫的每個字母均應大寫。如:
Product|
ProductManager|
ProductListActivity|
ProductListAdapter|
JsonHTTPSRequest
接口命名規范
接口命名規范
命名規則與類一樣采用大駝峰命名法,多以
able或
ible結尾。例如:
interface Runable|
interface Accessible
成員變量命名規范
成員變量命名規范
采用小駝峰命名法。
臨時變量命名
使用標準的Java命名方法,不推薦使用Google的m命名法。例如:
private String userName;而不推薦使用
private String mUserName;
常量命名
常量使用全大寫字母加下劃線的方式命名。例如:
public static final String TAG = "tag";
控件實例命名
類中控件名稱必須與xml佈局id保持一致(可以去掉
{module_name})。例如:
在佈局文件中 Button 的id為:
android:id="@+id/btn_pay"
private Button btn_pay;
方法命名規范
方法命名規范
動詞或動名詞,采用小駝峰命名法。例如:
run();|
onCreate();|
syncProducts();
佈局文件(Layout)命名規范
佈局文件(Layout)命名規范
全部小寫,采用下劃線命名法。其中
{module_name}為業務模塊或是功能模塊等模塊化的名稱或簡稱。
activity layout:
{module_name}_activity_{名稱}例如:
crm_activity_main.xml|
crm_activity_shopping.xml
fragment layout:
{module_name}_fragment_{名稱}例如:
crm_fragment_main.xml|
crm_fragment_shopping.xml
Dialog layout:
{module_name}_dialog_{名稱}例如:
crm_dialog_loading.xml
列表項佈局命名:
{module_name}_list_item_{名稱}例如:
crm_listitem_customer.xml
包含項佈局命名:
include_{名稱}例如:
include_head.xml
adapter的子佈局:
{module_name}_item_{名稱}例如:
qz_item_order.xml
widget layout:
{module_name}_widget_{名稱}例如:
crm_widget_shopping_detail.xml
資源id命名規范
資源id命名規范
命名模式為:
{view縮寫}_{module_name}_{view的邏輯名稱},如:
顧客管理CRM模塊佈局
LinearLayout的佈局id –>
ll_crm_content
模塊簡稱為qz的
ImageView的佈局id –>
iv_qz_photo
常見控件View與其縮寫對照參考表如下:
vcD4NCjxoMyBpZD0=”圖片資源文件命名規范”>圖片資源文件命名規范
圖標命名:
{module_name}_ic_{名稱}例如:
crm_ic_app.png
背景圖片命名:
{module_name}_bg_{名稱}例如:
crm_bg_navbar_highlight_normal.9.png
按鈕Button命名:
{module_name}_btn_{名稱}例如:
crm_btn_login_normal.9.png
按鈕checkbox圖片命名:
{module_name}_checkbox_{名稱}例如:
crm_checkbox_cart_true.png
其他圖片命名:
{module_name}_icon_{名稱}例如:
qz_icon_blue_circle.png
代碼風格
代碼風格
大括號問題
大括號問題
風格一
|
|
風格二
|
|
空格問題
空格問題
if else|
while|
運算符兩端等後面需用空格隔開。例如:
規范的編寫方式:
|
|
不規范的編寫方式:
|
|
方法參數
方法參數
當方法參數數量過多時,需進行換行處理.
註釋
註釋
必須要對所有實例變量、類常量進行註釋說明例如:
|
|
必須對所有的類、接口進行註釋說明例如:
|
|
必須對所有的方法進行註釋說明例如:
|
|
更多詳細也可以參考:
[Google Java編程風格指南](https://hawstein.com/posts/google-java-style.html)
駝峰式命名法(CamelCase)
駝峰式命名法(CamelCase)
大駝峰式命名法(
UpperCamelCase):
每個單詞的第一個字母都大寫 如:XmlHttpRequest
小駝峰式命名法(
lowerCamelCase):
除瞭第一個單詞,每個單詞的第一個字母都大寫 如:xmlHttpRequest
說明
該篇介紹為Android項目開發過程中的一些常用的命名規范|代碼編寫風格規范,該規范來源於個人資料整理(參考網絡技術博客)、個人項目實踐。參考這些規范有助於 項目的協同開發,項目代碼的風格統一、在項目的後期維護中更方便、快捷的查找、理解和修改別人的代碼。如朋友們有更好的規范要求、歡迎分享出來、一起討論。