1. 程式人生 > >軟件工程----代碼規範

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

觀察 內容 變量 檔案 函數名 calc 開發程序 順序 初學

結對同學:王航 http://www.cnblogs.com/wangh013/

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

《代碼規範》之10項條款

1.“開發程序的軟件很多,但是它們的檢查方式全是檢查語法,並沒有規定變量命名以及方法的命名,所以註釋是很必要的東西。”——註釋

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

2.“變量名、函數名,都只敲一遍,以後全部是拷貝+粘貼。”——拷貝+粘貼

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

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分)

一、違反和糾正次數:

第一條2次

第二條5次

第三條:1次

第四條:4次

第五條:4次

第八條:1次

第十條:3次

二、規範中某項條款的增強、消弱、或廢除

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

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

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

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

三、補充三條新的條款

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;

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