簡(jiǎn)單整理的Android開(kāi)發(fā)規(guī)范

一、包命名

1、包名全部采用小寫(xiě),不用下劃線(xiàn)區(qū)分單詞,多個(gè)單詞用駝峰命名法。例:com.packer.tablet、com.packer.tablet.otherView
2、包名按功能模塊劃分,該模塊相關(guān)類(lèi)都放置同一個(gè)包下面。例:網(wǎng)絡(luò)請(qǐng)求相關(guān)類(lèi)放在net或http包下面,數(shù)據(jù)庫(kù)相關(guān)類(lèi)放在db包下面,數(shù)據(jù)pojo類(lèi)放在bean包下面,activity和相關(guān)的adapter都放在同一個(gè)包下面等。

二、代碼

1、變量、方法命名主要采用大/小駝峰命名法,首字母小寫(xiě),后面的每個(gè)單詞首字母大寫(xiě)。例:getPackerInfo()
2、靜態(tài)常量使用public final static修飾(Java)、const val(Kotlin),并且命名為大寫(xiě),例:INTENT_RESULT_DATA = "data"
3、類(lèi)名、接口名、枚舉名等首字母大寫(xiě),若由多個(gè)單詞組成,則其后每個(gè)單詞首字母大寫(xiě),例:class ConfigManager{}
4、繼承自安卓組件的類(lèi),采用父類(lèi)名作為后綴,例:class LoginActivity extends Activity{}
5、變量、方法的命名以有意義的英文單詞命名,例:getLoginInfo()、loginUrl
6、成員變量盡量以m開(kāi)頭命名,推薦,例:mContext
7、控件命名盡量以控件名簡(jiǎn)寫(xiě)作為開(kāi)頭或結(jié)尾,駝峰式命名法。例:TextView控件:tvAdd、addTv Button控件:btnLogin、loginBtn
8、id命名盡量以控件名簡(jiǎn)寫(xiě)作為開(kāi)頭或結(jié)尾,全部小寫(xiě),單詞之間用下劃線(xiàn)隔開(kāi)。例:TextView控件:tv_add、add_tv Button控件:btn_login、login_btn
9、編碼格式統(tǒng)一為 UTF-8

三、資源

1、資源命名全部采用小寫(xiě),各單詞間以下劃線(xiàn)區(qū)分。例:icon_booking_order.png
2、selector文件以selector_開(kāi)頭、shape文件以shape開(kāi)頭。例:selector_clear_btn_bg.xml、shape_et_gray_bg.xml
3、布局文件命名以類(lèi)型+模塊名命名。例:activity_login.xml、dialog_change_price.xml、fragment_order_layout.xml、list_order_item.xml、recycle_food_item.xml、include_login_title_bar_layout.xml

四、常用開(kāi)發(fā)庫(kù)

1、網(wǎng)絡(luò)請(qǐng)求庫(kù):Retrofit、OKHttp
2、數(shù)據(jù)解析庫(kù):Gson、fastjson
3、軟件更新、異常上報(bào):bugly
4、圖片加載庫(kù):Glide
5、數(shù)據(jù)庫(kù)存儲(chǔ):Room
6、數(shù)據(jù)通訊:EventBus
7、掃碼功能:zxing相關(guān)庫(kù)
8、日志打?。篖ogCook、LogToFile
9、內(nèi)存泄漏檢測(cè)工具:LeakCanary
10、輕量級(jí)數(shù)據(jù)存儲(chǔ):DataStore、MMKV

五、開(kāi)發(fā)

1、新項(xiàng)目?jī)?yōu)先使用Kotlin語(yǔ)言與Java混合開(kāi)發(fā)、原有Java舊項(xiàng)目仍用Java開(kāi)發(fā)。
2、大型復(fù)雜優(yōu)先使用MVVM架構(gòu)開(kāi)發(fā),簡(jiǎn)單的小項(xiàng)目可不用。
3、使用Log打印日志而不是System.out.println()。
4、定義基本數(shù)據(jù)類(lèi)型變量非必要情況不用裝箱類(lèi)。
5、一個(gè)方法不能超過(guò)80行,多了就分開(kāi)。
6、版本號(hào)為3位數(shù),例:versionName "1.0.0",小修小改bug修復(fù)最后一位加1,小新功能添加修改中間位加1,大功能添加修改第一位加1,每更新一次版本,versionCode加1
7、使用視圖綁定viewBinding或者DataBinding替代findViewById

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀(guān)點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

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

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