Android 開發規範

開發規範,對於初學者可能不會太在意,但真正項目中,規範尤爲重要。一個好的開發規範,可以說是一種藝術,不僅僅有利於後期維護,對代碼的可讀性,美觀性都有影響。下面整理了android項目開發相關的規範。個人知識有限,還望大家補充。

命名規範

創建項目時的項目名稱:

  • 最好是英文,在項目做完簽名打包apk的時候,省去一些麻煩。(中文也不影響,但最後要改過來,不然不好打包)

包名的組織:

  • 爲防止應用程序在手機中安裝失敗,必須要保證寫的項目的包名是唯一的。一般以公司的域名的倒寫作爲包名的第一部分;第二部分爲應用名;第三部分爲具體包的模塊名。【域名倒寫+應用名稱+包的具體模塊】

  • 舉個實際例子:我之前爲蘇州科技學院做了一個打卡助手的應用。學校域名爲www.usts.edu.cn。那包名就可以這樣寫:cn.edu.usts.cardhelper,當然這隻能作爲應用全局的包名,爲使邏輯清晰,需繼續劃分各個不同的包,這裏有兩種劃分形式:一種是按功能模塊來劃分,一種是按android的一些組件來分。後面一種用的多一些。

  • 簡單說一下後面一種常用的包名的組織 有 activities,fragments,service,receiver,adapter,domain,utils,db,dao,test等

附一張打卡助手的項目包名組織截圖:

這裏寫圖片描述

佈局文件命名:

  • 如果佈局文件是爲activity寫的,那麼就這樣命名:activity_main, activity_splash, activity_login

  • 如果佈局文件是爲fragment寫的,那麼就這樣命名:fragment_one, fragment_two, fragment_three

  • 如果佈局文件是爲listview的一個條目寫的,那麼就這樣命名:item_video_list, item_music_list

  • 如果佈局文件是單獨的一個佈局,是寫給其它佈局用的,比如常見的標題欄的佈局,就可以這樣命名:layout_title

附一張手機影音的項目佈局文件截圖:

這裏寫圖片描述

佈局文件控件的命名:

  • 可以遵循這樣一種原則:控件簡寫 + 功能
    如:tv_title 表示顯示標題的TextView  iv_play 表示播放功能的ImageView

  • 如果多個佈局文件有相同功能的控件,依然可以用上面的原則,但爲了便於自己區分,可以這樣:簡寫 + 所處的佈局文件 + 功能
    如:tv_splash_title, tv_main_title 分別表示顯示splash頁面標題的TextView和顯示main頁面的標題

資源圖片的命名:

  • 可以遵循這樣一種原則:所屬控件/activity+功能+狀態
    如:btn_play_default,btn_play_pressed,main_tab_query_default,main_tab_query_pressed

  • 當然這裏不唯一,只要自己不會忘了當初命名的所遵循的規範即可。

附幾張圖片資源的命名圖:

這裏寫圖片描述 這裏寫圖片描述

資源文件的命名(drawable文件夾下的.xml文件)

  • 該文件夾下,主要放一些選擇器相關的xml文件,或者自定義的一些形狀,控件樣式等。

  • 以選擇器爲例,習慣這樣命名:selector_btn_play

附張截圖:

這裏寫圖片描述

常量的命名

  • 要大寫,用final修飾,用下劃線分割。
public static final int STUDENT_NUMBER = 50;
  • 如果常量較多,可以寫一個Constants類,專門用來存放一些常量。

附張截圖:

這裏寫圖片描述

變量的命名

  • 變量要具有實際意義,一看就懂。
    比如 :
private boolean isLogin = true; 
private TextView tvTitle;   
private ImageView ivPlay;

方法的命名

  • 方法名也要具有實際意義。
    比如 :
getDataFromSvr()
parseData()
updatePlayProgress()

註釋規範

  • 自己寫的一些接口文件,裏面的方法一定要寫註釋。因爲接口是給人用,但別人要知道具體是幹什麼的。

  • 一般開發,只要在方法上面寫個註釋就行了。

  • 當修改一些源碼時,要加註釋,格式如:

    Added/(Modified/ Deleted) by 開發者姓名 年-月-日;

數據庫規範

  • 建庫建表建字段,這是所有數據庫都有的操作,應該放在一個類中

  • 增刪改查的方法,應該放在dao層

  • 增刪改查方法寫好後,一定要做單元測試,在test包下寫方法測試。

其它規範

  • xml佈局文件中,不要出現中文,全部抽取到strings.xml文件中,方便應用國際化。

  • 顏色值也可以不寫死,抽取到colors.xml中,方便後期調整。

  • 對於多個相同控件有相同屬性的情況,可以將這些相同的屬性抽取到styles.xml文件中,使代碼既簡潔有便於修改。

  • 一些控件的大小可以抽取到dimens.xml文件中,方便後期屏幕適配。


PS:本文整理的規範,有個人主觀的因素在其中,或許有的與你們不太一致。接受不同意見~

歡迎大家補充,共同成長~

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章