軟件工程----代碼規範

結對同窗:王航 http://www.cnblogs.com/wangh013/編程

 

要求1 《代碼規範》包括10項條款。制定條款的目的是在程序設計的過程當中(觸犯和)約束代碼風格,但願切實可行,容易觀察和客觀檢驗。  好比, 每一個函數不超過5行,對於初學者是不切實際的; 大括號匹配縱列對齊,是切實可行的; 變量名易讀,是不易檢驗的,變量名必須是名詞短語,遵循熊匈牙利命名法,是易於檢驗的。函數

 

《代碼規範》之10項條款編碼

1.「開發程序的軟件不少,可是它們的檢查方式全是檢查語法,並無規定變量命名以及方法的命名,因此註釋是很必要的東西。」——註釋spa

對變量及方法進行相應的註釋,可以使代碼易於維護,程序並不是一次性的產品,它須要擴展、修改還有維護。設計

2.「變量名、函數名,都只敲一遍,之後所有是拷貝+粘貼。」——拷貝+粘貼代碼規範

可防止因少或多打一兩個字母,而出現的bug問題。blog

3.「標識符的首字母小寫,而每一個後面鏈接的單詞的首字母都大寫。」——小大寫排序

在命名變量或方法名時,遵循統一的命名規則,儘可能作到名如其義,且命名時首字母小寫,其後的單詞首字符都大寫。開發

4.「縮進應該是每行一個Tab(4個空格),不要在代碼中使用Tab字符。」——縮進文檔

表現代碼的邏輯層次,易於查看,每行的一個Tab是指基於上層或所在邏輯結構,並不是都是基於本行開頭部分。

5.「空行是爲了將邏輯上相關聯的代碼分塊,以便提升代碼的可閱讀性。

    在代碼中,不能包含多個空行。       

    在如下狀況下使用一個空行:

    1)方法中變量聲明與語句之間。

    2)方法與方法之間。

    3)方法中不一樣的邏輯塊之間。

    4)方法中的返回語句與其餘的語句之間。

    5)屬性與方法、屬性與字段、方法與字段之間。

6)註釋與它註釋的語句間不空行,但與其餘的語句間空一行。」——空行

其基本原則是在每個小的邏輯塊之間加空行。

6.「1)左花括號‘{’與關鍵字或方法名在同一行,中間置一個空格。

2)右花括號‘}’要與相應的左花括號‘{’所在方法對齊,單獨成行。」 

 ——花括號

例如:

public void add() {

......

}

7.「建議在變量聲明時就對其作初始化。」——初始化

8.「變量建議置於塊的開始處,不要老是在第一次使用它們的地方作聲明。」——聲明變量的位置

若此變量並不是只在局部被使用一次,其聲明就應該放在本塊的開始部分,方法內部較靠前的位置進行變量的聲明,易於查看和維護。

9.對於屬性的設置,儘可能設置爲private類型,對於它的調用,可經過其get或set方法,這樣要比直接將其設置爲public要好一些。——屬性的類型設置

10.switch-case語句使用格式

switch(condition) {   

case 1:

statements;

break;

case 2:

statements;

break;

default:

statements;

break;

}      

注意:   

1)每一個case各佔一行。

2)每一個case按照字母順序進行排序。

3)每一個非空case均提供break;結束語句。

4)每一個switch語句均提供default分支。   ——switch語句的結構

 

要求2 記錄完成本週做業過程當中,《代碼風格規範》執行狀況。包括記錄每一條規則的違反和糾正次數,規範中某項條款的加強、消弱、或廢除。在編碼過程當中徹底未被違反的條款,說明過於寬鬆,或大家已經徹底"本能"反應,不該做爲條款,在本要求及要求1中不得分。此種狀況,應補充一條新的條款。 (20分)

 

1、違反和糾正次數:

第一條2次

第二條5次

第三條:1次

第四條:4次

第五條:4次

第八條:1次

第十條:3次

2、規範中某項條款的加強、消弱、或廢除

1)對於註釋,要注意其規範性,對某個模塊的註釋,使用/**/;對某個變量或方法的註釋,使用//。

2)對於變量的命名,儘可能作到看到名字就明確其意義,對於像calculate()這樣的方法,寫calculate就比只寫三個字母cal好一些。

3)對於縮進,必定要嚴格執行,表示着編程中的邏輯性。

4)對於空行,要在模塊間適當的加入進去,但也應當注意加入一行空格,不要有的地方是一行,有的地方是兩行。

3、補充三條新的條款

1)適當的空格:本次有關空格的錯誤違反多達9次,雖然這個問題比較小,可是應當注意在運算符號「+」、「-」或者用雙引號使用某變量的值時,適當加入空格會使代碼總體更加規範。

例如:

System.out.println("你一共答對"+right+"道題,共"+number+"道題。");

System.out.println("你一共答對" + right + "道題,共" + number + "道題。");

相比較而言,後者看起來更好一些。

2)模塊頭部註釋,能夠在某個模塊前加入以下內容,爲了更好地瞭解開發和修改狀況。  

做者(Author)、日期(Create Date)、參考文檔(Reference)(可選)、引用(Using) (可選)、修改記錄(Revision History):若檔案的全部者改變,則須要有修改人員的名字、修改日期及修改理由。

3)變量聲明:爲了保持更好的閱讀習慣,應一行只聲明一個變量,而不是講多個變量聲明寫在一行中。

例如:    

String strTest1, strTest2;    

應寫成:    

String strTest1;    

String strTest2;

相關文章
相關標籤/搜索