android 代碼規(guī)范

規(guī)范建議

  • 本文檔參考《阿里巴巴 Java 開發(fā)手冊》撰寫而成.撰寫人:Simon,撰寫時間:2022/1/26

一、命名規(guī)范

命名原則:單一,簡潔,易懂

  • 任何變量名建議采用駝峰命名法
    • TextView tvName = findViewbyId(R.id.tv_name);
  • 全局變量建議在變量名前面增加前綴m
    • private UserModel =mUser;
  • 布局命名方式建議統(tǒng)一命名
    • activity的用act_開頭
    • fragment用frag_開頭
    • dialog用dialog_開頭
    • popupwindow統(tǒng)一用pop_開頭
    • 其他自定義view統(tǒng)一用view_開頭;
    • tips:后面但凡涉及到頁面有關(guān)的命名,都建議統(tǒng)一加上此處的命名規(guī)則
  • 控件id建議采用_分隔,同時參考布局命名方式,以對應(yīng)的View的縮寫命名
    • TextView的命名前綴一定是tv:R.id.tv_user_info
    • item的命名前綴一般是item:R.id.item_xxxx
  • 資源文件命名方式
    • 圖片統(tǒng)一開頭icon:icon_header
    • 選擇器命名:select-XXX
    • 背景頁建議采用bg_act_XXX或者bg_frag_XXX的方式命名
  • String國際化文件命名,必須要保證每個頁面每個地方的文字的key都是唯一的,哪怕翻譯文案完全相同,也不要復(fù)用
    • act_title_XXX或frag_title_XXX,
    • 禁止使用字符串拼接的方式去做國際化
    • 建議不要寫死view的寬度,因?yàn)椴煌Z種下的文案長度可能不同
  • colors命名規(guī)則
    • 格式全部一致:color_000000,直接把顏色值放在color后面,避免起名困難癥,如果有透明度,需要在前兩位增加透明度
  • 屏幕適配規(guī)則:建議直接采用今日頭條適配方案,侵入性小,兼容性高,部分規(guī)則性高度,比如狀態(tài)欄高度,標(biāo)題欄高度可寫入dimens文件

二、組件UI規(guī)范

原則:高內(nèi)聚,低耦合,高并發(fā),高性能

  • 邏輯復(fù)雜的代碼必須有注釋,在關(guān)鍵的步驟進(jìn)行說明
  • 少用匿名內(nèi)部類,避免出現(xiàn)內(nèi)存泄露問題,使用了動畫的匿名內(nèi)部類監(jiān)聽的話,要及時調(diào)用remove等方法去釋放
  • 不要在onSaveInstanceState里面去保留常規(guī)數(shù)據(jù),因?yàn)檫@里一般是意外銷毀才調(diào)用
  • Intent隱式跳轉(zhuǎn)的時候,必須resolveActivity進(jìn)行檢測
  • 如果需要在Service里進(jìn)行耗時操作,建議開啟子線程或者使用IntentService
  • 布局嵌套能少則少
  • 盡量使用DialogFragment替代以前的dialog,以便于進(jìn)行生命周期的管理
  • 常用控件需要抽取封裝
  • 棄用SrollView,使用NestedScrollView替代,對性能會有提升
  • RecyclerView刷新數(shù)據(jù)的時候,避免使用notifydataset方法,建議采用notifyItemChanged等相關(guān)方法去操作單一的數(shù)據(jù)變化,高頻刷新可以采用帶payload的方法去實(shí)現(xiàn)

通信規(guī)范

  • 禁止new thread,使用線程池來替代
  • 盡量傳單一變量:如id之類的字段,對象繼承自Parcelable不要繼承Serializable,大量數(shù)據(jù)建議采用eventbus、rxbus等傳遞

版本管理規(guī)范

  • 無用代碼盡量及時刪除,不要留著對正常代碼產(chǎn)生干擾,如果需求要求還原,建議從歷史版本里尋找相關(guān)代碼
  • 提交代碼盡量詳細(xì)的描述提交的內(nèi)容,一來便于自測,二來便于溝通
  • 建議每完成一個功能模塊都要提交一次代碼,細(xì)分提交便于應(yīng)對需求的頻繁調(diào)整
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容