1.編碼格式
源文件編碼格式為 UTF-8暮现。
2.列字符個數(shù)限制
a.80個字符的列限制罩抗,除了下述例外,任何一行如果超過這個字符數(shù)限制射沟,必須自動換行。
b.不可能滿足列限制的行(例如与境,Javadoc中的一個長URL验夯,或是一個長的JSNI方法參考)。?
c.package和import語句
3.包名統(tǒng)一用小寫
公司所有項目必須以(com.jumper)為包名前綴
如:com.jumper.hospitaldoctor
4.類名
類名都以UpperCamelCase風(fēng)格編寫摔刁。采用大駝峰命名法挥转,盡量避免縮寫,除非該縮寫是眾所周知的簸搞,比如HTML,URL扁位,如果類名稱中包含單詞縮寫,則單詞縮寫的每個字母均應(yīng)大寫
Activity 類? ? ? ? ? ? ? ? Activity為后綴標(biāo)識
如:歡迎頁面類WelcomeActivity
Adapter類 ? ? ? ? ? ? ? ?Adapter 為后綴標(biāo)識
如:新聞詳情適配器 NewDetailAdapter
工具方法類 ? ? ? ? ? ? ? ?Util或Manager為后綴標(biāo)識
如:(與系統(tǒng)或第三方的Utils區(qū)分)或功能+Util線程池管理類:ThreadPoolManager
日志工具類:LogUtil(Logger也可)
打印工具類:PrinterUtil
數(shù)據(jù)庫類 ? ? ? ? ? ? ? ? ?DBHelper后綴標(biāo)識
如:新聞數(shù)據(jù)庫:NewDBHelper
Service類 ? ? ? ? ? ? ? ?Service為后綴標(biāo)識
如:時間服務(wù)TimeServiceBroadcast
Receiver類 ? ? ? ? ? ? ?Receiver為后綴標(biāo)識
如:推送接收J(rèn)PushReceiver
ContentProvider ? ?Provider為后綴標(biāo)識
自定義的共享基礎(chǔ)類 ? ? ? ?Base開頭
如:BaseActivity,BaseFragment
5.常量名
全部字母大寫趁俊,用下劃線分隔單詞域仇。
如:public static final int DEFAULT_TIME_OUT = 1000;
6.非常量字段名
a.非公有,非靜態(tài)字段命名以m開頭寺擂。
如:private Context mContext;
int mClickPosition;
b.靜態(tài)字段命名以s開頭暇务。
如:private static boolean sIsActivite;
c.公有靜態(tài)字段(全局變量)命名以g開頭
如:public static UserInfo gUserInfo;
d.其它Type 類型
字符串添加如下后綴:Str
集合添加如下后綴:List、Map怔软、Set
數(shù)組添加如下后綴:Arr
如:
String mPhoneStr;
private List mFHRDataList;
7.方法名
方法名都以 LowerCamelCase 風(fēng)格編寫垦细。
方法名通常是動詞或動詞短語。
initXX() ? ? ? ? ? ? ? ? ? ? ? ? ??初始化相關(guān)方法,使用init為前綴標(biāo)識挡逼,如初始化布局initView()
isXX() checkXX() ? ? ? ? ? ? 方法返回值為boolean型的請使用is或check為前綴標(biāo)識
getXX() ? ? ? ? ? ? ? ? ? ? ? ? ? 返回某個值的方法括改,使用get為前綴標(biāo)識
handleXX() ? ? ? ? ? ? ? ? ? ? 對數(shù)據(jù)進(jìn)行處理的方法,盡量使用handle為前綴標(biāo)識
displayXX()/showXX()? ? 彈出提示框和提示信息家坎,使用display/show為前綴標(biāo)識
saveXX() ? ? ? ? ? ? ? ? ? ? ? ? 與保存數(shù)據(jù)相關(guān)的嘱能,使用save為前綴標(biāo)識
resetXX() ? ? ? ? ? ? ? ? ? ? ? ?對數(shù)據(jù)重組的,使用reset前綴標(biāo)識
clearXX() ? ? ? ? ? ? ? ? ? ? ? ?清除數(shù)據(jù)相關(guān)的
removeXXX() ? ? ? ? ? ? ? ? ?清除數(shù)據(jù)相關(guān)的
drawXXX() ? ? ? ? ? ? ? ? ? ? ?繪制數(shù)據(jù)或效果相關(guān)的虱疏,使用draw前綴標(biāo)識
另:
@Override:能用則用
只要是合法的惹骂,就把@Override注解給用上。
8.資源文件命名規(guī)范
a.資源布局文件(XML文件(layout布局文件)):
全部小寫做瞪,采用下劃線命名法
? 1) contentview 命名
? ? ? 必須以全部單詞小寫对粪,單詞間以下劃線分割,使用名詞或名詞詞組。
? ? ? 所有Activity或Fragment的contentView必須與其類名對應(yīng)著拭,對應(yīng)規(guī)則為:
? ? ? 將所有字母都轉(zhuǎn)為小寫纱扭,將類型和功能調(diào)換(也就是后綴變前綴)。
? ? ?例如:activity_main.xml
? 2) Dialog命名:dialog_描述.xml
? ? ?例如:dialog_hint.xml
? 3) PopupWindow命名:ppw_描述.xml
? ? ?例如:ppw_info.xml
? 4) 列表項命名:item_描述.xml
? ? ?例如:item_city.xml
b.values中name命名
strings茫死、colors 的name命名使用下劃線命名法跪但,采用以下規(guī)則:?
模塊名+activity/fragment/item+邏輯名稱
如:health_activity_main_title 健康主頁標(biāo)題?
styles的name命名使用 Camel命名法,采用以下規(guī)則:
通用的 ? ? ?類別.屬性.屬性
如:textview.size_16.color_666666
非通用的 ? ? ?模塊名+邏輯名稱
如:main_timeDialog
9.UI控件縮寫表
LinearLayout ? ? ? ? ? ? ? ? ? ? ? ?ll ? ? ? ? llFriend
RelativeLayout ? ? ? ? ? ? ? ? ? ? rl ? ? ? ? rlMessage
FrameLayout ? ? ? ? ? ? ? ? ? ? ? ?fl ? ? ? ? flCart
Button ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? btn ? ? ? btnHome
ImageButton ? ? ? ? ? ? ? ? ? ? ? ibtn ? ? ? btnPlay
TextView ? ? ? ? ? ? ? ? ? ? ? ? ? ? tv ? ? ? ? tvName
EditText ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? et ? ? ? ?etName
ListView ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? lv ? ? ? ? ?lvCart
ImageView ? ? ? ? ? ? ? ? ? ? ? ? ? iv ? ? ? ? ?ivHead
GridView ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?gv ? ? ? ? gvPhoto
10.常見的英文單詞縮寫:
名稱縮寫
icon ? ? ? ? ? ? ? ? ? ? ? ? ? ic (主要用在app的圖標(biāo))
color ? ? ? ? ? ? ? ? ? ? ? ? ?cl(主要用于顏色值)
divider ? ? ? ? ? ? ? ? ? ? ? ?di(主要用于分隔線峦萎,不僅包括Listview中的divider屡久,還包括普通布局中 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?的線)
average ? ? ? ? ? ? ? ? ? ? avg
background ? ? ? ? ? ? ? bg(主要用于布局和子布局的背景)
buffer ? ? ? ? ? ? ? ? ? ? ? ?buf
control ? ? ? ? ? ? ? ? ? ? ?ctrl
delete ? ? ? ? ? ? ? ? ? ? ? ?del
document ? ? ? ? ? ? ? ? ?doc
error ? ? ? ? ? ? ? ? ? ? ? ? ?err
escape ? ? ? ? ? ? ? ? ? ? ? esc
increment ? ? ? ? ? ? ? ? ?inc
infomation ? ? ? ? ? ? ? ? info
initial ? ? ? ? ? ? ? ? ? ? ? ? init
image ? ? ? ? ? ? ? ? ? ? ? ? img
Internationalization ? ?I18N
length ? ? ? ? ? ? ? ? ? ? ? ?len
library ? ? ? ? ? ? ? ? ? ? ? ?lib
message ? ? ? ? ? ? ? ? ? ?msg
password ? ? ? ? ? ? ? ? ? pwd
position ? ? ? ? ? ? ? ? ? ? pos
server ? ? ? ? ? ? ? ? ? ? ? ?srv
string ? ? ? ? ? ? ? ? ? ? ? ?str
temp ? ? ? ? ? ? ? ? ? ? ? ? tmp
window ? ? ? ? ? ? ? ? ? ? wnd(win)
摘自:http://www.reibang.com/p/0a984f999592