在開發中,一個良好的開發習慣以及一個開發規范可能會讓你少走很多彎路,也會一定程度上的提高代碼的可讀性,可維護性和可拓展性。
當隨著需求的不斷變更,需要維護項目的時候。當隨著項目的代碼量的提升,需要重構的時候。你會明白一個好的開發規范多么多么的重要。
今天,小編整理的android開發編碼規范,希望對你有用。
1.java 代碼中不出現中文
java 代碼中不出現中文,最多注釋中可以出現中文
2.變量命名
局部變量命名、靜態成員變量命名,只能包含字母,單詞首字母出第一個外,都為大寫,其他字母都為小寫
3.常量命名
只能包含字母和_,字母全部大寫,單詞之間用_隔開
4.layout中的id命名
命名模式為:view縮寫_模塊名稱_view的邏輯名稱
view的縮寫詳情如下
LayoutView:lv
RelativeView:rv
TextView:tv
ImageView:iv
ImageButton:im
Button:btn
5.activity中的view變量命名
命名模式為:邏輯名稱+view縮寫
建議:
如果layout文件很復雜
建議將layout分成多個模塊
每個模塊定義一個moduleViewHolder
其成員變量包含所屬view
6.strings.xml中的id命名模式
activity名稱_功能模塊名稱_邏輯名稱/activity名稱_邏輯名稱/common_邏輯名稱,strings.xml中,使用activity名稱注釋,將文件內容區分開來
7.drawable中的圖片命名
命名模式:activity名稱_邏輯名稱/common_邏輯名稱
8.styles.xml
將layout中不斷重現的style提煉出通用的style通用組件,放到styles.xml中;
9.使用layer-list和selector
使用layer-list和selector
10.圖片
圖片盡量分拆成多個可重用的圖片
11.盡量不要放在客戶端
服務端可以實現的,就不要放在客戶端
12.引用第三方庫要慎重
引用第三方庫要慎重,避免應用大容量的第三方庫,導致客戶端包非常大
13.異常和錯誤處理
處理應用全局異常和錯誤,將錯誤以郵件的形式發送給服務端
14.圖片處理
圖片的.9處理
15.靜態變量
使用靜態變量方式實現界面間共享要慎重
16.Log
Log(系統名稱 模塊名稱 接口名稱,詳細描述)
17.單元測試
單元測試(邏輯測試、界面測試)
18.不要重用父類的handler
不要重用父類的handler,對應一個類的handler也不應該讓其子類用到,否則會導致message.what沖突
19.處理所有的邏輯
activity中在一個View.OnClickListener中處理所有的邏輯
20.字符串的通配
strings.xml中使用%1$s實現字符串的通配
21.共同的UI處理
如果多個Activity中包含共同的UI處理,那么可以提煉一個CommonActivity,把通用部分叫由它來處理,其他activity只要繼承它即可
22.使用button+activitgroup
使用button+activitgroup實現tab效果時,使用Button.setSelected(true),確保按鈕處于選擇狀態,并使activitygroup的當前activity與該button對應
23.通用組件文件名增加前綴
如果所開發的為通用組件,為避免沖突,將drawable/layout/menu/values目錄下的文件名增加前綴
24.數據一定要效驗題
數據一定要效驗,例如字符型轉數字型,如果轉換失敗一定要有缺省值;服務端響應數據是否有效判斷;
25.升級
同一個客戶端如果要放在不同的市場,而且要統計各個市場下載及使用數據時針對不同的客戶端打不同的包,唯一的區別是versionName,apk文件名為versionName.apk在升級時,要將自己的versionCode和versionName一并傳給服務端,如果需要升級,則下載versionName相對應的apk
關于是否要強制升級:
1).不管何種情況都強制升級
2).判斷用戶的版本和當前最新版本,如果兼容則強制升級,否則可選;
26.避免重復點擊
有的按鈕要避免重復點擊
達牛是手機應用學開創者,專注于手機應用開發。來達牛,參與更多的手機應用項目開發,編程技術當然比大學院校畢業生更牛。
轉發本文并關注達牛微信號 todaniu 可以免費參加手機應用項目實戰。