android代碼規范和studio配置CodeStyle


studio配置CodeStyle可以很好的幫助我們檢測代碼規范性,保持大家的代碼統一,來看看怎么配置和使用吧

 

代碼規范,自己公司的一套

 

代碼規范

一、      簡介

A.    目的

本文提供一整套編寫高效可靠的 Java代碼的標准、約定和指南。它們以安全可靠的軟件工程原則為基礎,使代碼易於理解、維護和增強。而且,通過遵循這些程序設計標准,你作為一個 Java軟件開發者的生產效率會有顯著提高。經驗證明,若從一開始就花時間編寫高質量的代碼,則在軟件開發階段,對代碼的修改要容易很多。最后,遵循一套通用的程序設計標准將帶來更大的一致性,使軟件開發團隊的效率明顯提高。

      

Note: 規范編碼的目的是讓開發者更容易理解其他人的代碼,而不是約束你編碼的方式

B.    范圍

本指南僅適用於使用Java編寫的Android程序代碼。

C.    參考資料

http://www.oracle.com/technetwork/java/codeconvtoc-136057.html

http://source.android.com/source/code-style.html

 

 

二、      快速入門

l  駝峰式命名(大小寫交替)

錯誤:

public classmyClass

publicinterface foo

public finalstatic int max = 100

public intFooValue

正確:

public classMyClass

publicinterface IFoo

public finalstatic int MAX = 100

public intfooValue

l  使用Javadoc識別的注釋

在函數聲明前添加注釋(輸入”/**”+回車)

l  精簡函數體(最好不要超過40行)

l  局部變量隨用隨聲明(盡量縮小變量的作用域)

l  每行最長100字符

l  縮進用4個空格代替TAB

l  成員變量名用m開頭,static變量名用s開頭

l  前大括號“{”不要單占一行

錯誤:

if(condition)

{

//dosomething

    }

正確:

if(condition) {

    //do something

}

l  多利用標准注解

錯誤:

publicvoidonCreate(Bundle savedInstanceState) {

正確:

@Override

publicvoidonCreate(Bundle savedInstanceState) {

l  少用不常見縮寫

錯誤:opnDlg

正確:openDialog

三、      命名

A.  Java命名規范

命名應符合駝峰式規則,利用大小寫字母交替來區分名稱中的不同單詞,即應采用小寫字母,但類名、接口名以及任何非初始單詞的第一個字母要大寫。

 

1.        盡量使用完整的英文描述符,采用適用於該領域的術語

2.        采用大小寫混合使名字可讀

3.        盡量少用縮寫,但如果用了,要明智地使用。

4.        避免使用類似的名字,或者僅僅是大小寫不同的名字

 

類型

規則

示例

包名

全部小寫字母,URL倒序

package com.domain.project

類名

首字母大寫,使用描述性強的名詞,避免使用縮寫,除非該縮寫十分通用(Url、Html)

class Raster;

class ImageSprite;

接口

同上。通常以字母I開頭。回調接口等特殊情況可不加I。

interface IRasterDelegate;

interface IStoring;

interface OnClickListener;

方法

使用動詞,駝峰式命名,首字母小寫

run();

runFast();

getBackground();

變量

使用有意義的簡短的單詞,駝峰式,首字母小寫。

成員變量m開頭,JavaBean例外。

static變量s開頭。

int i;

float myWidth;

int mPrivate;

static MyClass sSingleton;

常量

全部大寫,用下划線分割單詞,static final修飾

static final int MIN_WIDTH = 4;

 

 

 

B.  Android命名規范

類型

規則

示例

Activity

XxxxActivity

MainActivity

View

XxxView,XxxLayout

RedTextView、BluetoothDialog

Service

XxxService

 

BroadcastReceiver

XxxxReceiver

 

工具方法類

Utils或Manager為后綴

ThreadPoolManager、LogUtils

基礎類                    

BaseXxx

BaseActivity、BaseFragment、BaseDao

布局xml

全部小寫,以下划線分割,使用名詞命名。Activity或Fragment的布局文件必須與其類名對應,對應規則為:將所有字母都轉為小寫,將類型和功能調換。

activity_main.xml

fragment_homework.xml

dialog_bluetooth.xml //對話框

item_message.xml //列表Item

vw_titlebar.xml //其他布局文件

布局id

全部小寫,以下划線分割,view縮寫_view的邏輯名稱

layout_city、tv_name、btn_submit、img_head、list_message

圖片文件

全部小寫,以下划線分割。

xxxx_checked.png

xxxx_focused.png

xxxx_selected.png

xxxx_pressed.png

xxxx_disabled.png

xxxx_normal.png

Drawable xml

selector_xxx、shape_xxx

 


四、     注釋

1.        每個類必須有文件頭注釋。簡要說明類的作用,注明作者和創建時間。標准模板:

/**

 * Filedescription.

 *

 * @author ${USER}

 * @date ${DATE}

 */

 

2.        大部分方法都需要方法注釋,一些不言自明的方法除外。簡要說明方法作用,並解釋參數、返回值、拋出異常。方法注釋請使用JavaDoc標准。例如:

/**

* Description.

*

* @param arg1 description

* @param arg2 description

* @return description

* @throws Exception description

*/

public int getFoo(int arg1, booleanarg2) throws Exception {

   return 0;

}

 

3.        關鍵邏輯或者較復雜的邏輯處,應該添加必要的注釋。單行注釋使用”//”,多行注釋使用/**/。

 

4.        注釋必須在程序改變時實時更新。

5.        簡單明了,確保任何程序員都可以讀懂。

 

 

 

五、      其他規范

1.        所有文件編碼格式為UTF-8。

2.        變量的作用域應該盡量小,需要時才聲明,並盡快進行初始化。

3.        前大括號不要單獨占用一行,不要省略單行代碼塊的大括號。

正確:

if (condition) {

    statements;

}

錯誤:

if (condition)  //沒有大括號

statement;

錯誤:

if (condition)  //前大括號單獨占用一行

{

statement;

}

 

4.        盡量少使用縮寫,除非該縮寫很常見(Html、Url)

5.        縮進使用4個空格替代Tab。

6.        編寫代碼后必須格式化。AndroidStudio默認格式化快捷鍵:Ctrl+Alt+L。

7.        在代碼中邏輯性代碼塊的起始、結尾處,都應該加入空行,並在起始處寫注釋。

相對獨立的程序塊之間必須加空行。

8.        一行代碼不超過100字符。超過100字符,請換行或者提取變量。

9.        方法體不超過40行。若超過,則應考慮拆分成多個方法。

10.    盡量避免使用枚舉類,使用常量代替。

11.    只要是合法的,就把@Override注解給用上。

12.    規范TODO使用,加上日期和描述,並及時解決刪除。AndroidStudio中可以敲todo來使用標准模板。例如:

// TODO: 2017/1/5簡單描述

13.    采用統一的LogUtils來輸出Log。輸出的Log要簡明扼要。充足的log可以便於定位錯誤,但Log太多會影響程序性能(I/O耗時)。正式版本應該關閉Log開關。

14.    Java文件中不允許有多余的import,不允許importjava.io. *

15.    Warning要解決。

16.    不允許硬編碼,狀態值必須定義常量,並添加注釋。

 

 

配置CodeStyle

 

Android Studio統一配置

 

1.   配置CodeStyle

 

按照上圖標注順序,導入AndroidCodeStyle.xml文件。

2.   工程文件編碼統一為UTF-8

 

 

 

3.   注釋模板

 

 

注意:請將${USER}修改為自己的名稱,模板前后不要有多余的空格與換行符。

/**

 * File description.

 *

 * @author ${USER}

 * @date ${DATE}

 */

 

 

4.   安裝使用CheckStyle插件

 

 

 

安裝完成后,重啟AndroidStudio。然后添加CheckStyle腳本:

 

 

 

 

 

配置實時檢查

 

 

使用方法簡介:

-        配置好實時檢查后,在編輯器中,不符合風格的代碼會直接出現警告:

 

 

 

 

-        在Java文件中右鍵,點擊如圖選項,即可查看當前文件所有不符合風格的代碼段:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM