做業要求:【https://edu.cnblogs.com/campus/nenu/SWE2017FALL/homework/993】
代碼規範文檔/代碼規範執行記錄:【https://coding.net/u/Dawnfox/p/f4/git/tree/master/doc】
結對同窗:【袁玥】
我和隊友于2017/10/3肯定四則運算做業的代碼規範主要由三方面構成:格式、命名和註釋。git
A. 代碼行數 (1) 代碼文件不超過500行 (2) 函數的行數不超過50行 B. 換行 (1) 函數與函數之間空一行 (2) 函數內部變量聲明與函數內部邏輯代碼之間空一行 (3) 函數內部不一樣邏輯代碼之間空一行 C. 大括號 「{」和「}」必須單獨在一行上,且上下對齊。 D. 縮進 代碼縮進一導致用Tab實現,規定Tab鍵寬度爲4個字符,不建議使用空格進行縮進。 E. 空格 (1) 函數參數列表中不一樣參數之間應該用一個空格分開,即逗號後面應跟一個空格。如: void updateData(int source, int target) (2) for循環中表達式之間應該用一個空格分開,即分號後面應跟一個空格。如: for(exp1; exp2; exp3) (3)操做符與操做數之間應該用一個空格分開,一元操做符(例如自增「++」,自減「--」等)與操做符不做此限定。如: a += b + c; ++a;
變量主要分爲類的公有和私有變量,方法的參數變量與內部使用的臨時變量。 A. 變量的名稱由多個名詞單詞或一個名詞單詞組成時,第一個單詞首字母小寫,其餘單詞首字母均大寫。如makeRule。 B. 對於const常量,全部單詞均大寫,且單詞之間由下劃線」_」鏈接,如APP_NAME。 C. 函數名稱的第一個單詞首字母爲大寫的動詞。如IsDir(是否爲目錄)。 D. 變量名和函數名可以表達它所具備的實際含義。如函數名IsDir表示輸入路徑是否爲目錄,res表示是判斷的結果。
E. 儘可能避免單詞縮寫,即使它多是衆所周知的。
A. 只採用「//」做爲註釋符 B. 註釋的位置 (1) 註釋在被註釋函數定義的頂部
(2) 註釋在函數內部變量聲明的右邊
(3) 註釋在函數內部邏輯代碼的頂部
C. 註釋的內容 (1) 代碼的功能
(2) 對讀者閱讀代碼時可能產生的疑問作解釋,好比,該段代碼使用了堆棧,爲何須要堆棧而並不是數組,在此處代碼部分給出註釋
規範項 | 狀況記錄 | 違反次數 | 待修訂 | 已修訂 | 備註0(是否對條款進行加強) | 備註1(是否對條款進行消弱) | 備註2(是否對條款進行廢除) |
---|---|---|---|---|---|---|---|
格式.A.(1) | 代碼文件不超過500行 | 1 | 1 | 0 | 0 | 1 | 0 |
格式.A.(2) | 函數的行數不超過50行 | 3 | 3 | 0 | 0 | 0 | 1 |
格式.B.(1) | 函數與函數之間空一行 | 0 | 0 | 0 | 0 | 0 | 0 |
格式.B.(2) | 函數內部變量聲明與函數內部邏輯代碼之間空一行 | 0 | 0 | 0 | 0 | 0 | 0 |
格式.B.(3) | 函數內部不一樣邏輯代碼之間空一行 | 2 | 0 | 2 | 0 | 0 | 0 |
格式.C | 「{」和「}」必須單獨在一行上,且上下對齊 | 11 | 0 | 11 | 0 | 0 | 0 |
格式.D | 代碼縮進一導致用Tab實現,規定Tab鍵寬度爲4個字符,不建議使用空格進行縮進 | 0 | 0 | 0 | 0 | 0 | 0 |
格式.E.(1) | 函數參數列表中不一樣參數之間應該用一個空格分開,即逗號後面應跟一個空格 | 1 | 0 | 1 | 0 | 0 | 0 |
格式.E.(2) | for循環中表達式之間應該用一個空格分開,即分號後面應跟一個空格 | 0 | 0 | 0 | 0 | 0 | 0 |
格式.E.(3) | 操做符與操做數之間應該用一個空格分開,一元操做符(例如自增「++」,自減「--」等)與操做符不做此限定 | 0 | 0 | 0 | 0 | 0 | 0 |
命名.A | 變量的名稱由多個名詞單詞或一個名詞單詞組成時,第一個單詞首字母小寫,其餘單詞首字母均大寫。如makeRule | 0 | 0 | 0 | 0 | 0 | 0 |
命名.B | 對於const常量,全部單詞均大寫,且單詞之間由下劃線」_」鏈接,如APP_NAME | 0 | 0 | 0 | 0 | 0 | 0 |
命名.C | 函數名稱的第一個單詞首字母爲大寫的動詞。如IsDir(是否爲目錄) | 0 | 0 | 0 | 0 | 0 | 0 |
命名.D | 變量名和函數名可以表達它所具備的實際含義。如函數名IsDir表示輸入路徑是否爲目錄,res表示是判斷的結果 | 0 | 0 | 0 | 0 | 0 | 0 |
命名.E | 儘可能避免單詞縮寫,即使它多是衆所周知的 | 3 | 0 | 3 | 0 | 0 | 0 |
註釋.A | 只採用「//」做爲註釋符 | 0 | 0 | 0 | 0 | 0 | 0 |
註釋.B.(1) | 註釋在被註釋函數定義的頂部 | 0 | 0 | 0 | 0 | 0 | 0 |
註釋.B.(2) | 註釋在函數內部變量聲明的右邊 | 0 | 0 | 0 | 0 | 0 | 0 |
註釋.B.(3) | 註釋在函數內部邏輯代碼的頂部 | 0 | 0 | 0 | 0 | 0 | 0 |
註釋.C.(1) | 代碼的功能 | 2 | 0 | 2 | 0 | 0 | 0 |
註釋.C.(2) | 對讀者閱讀代碼時可能產生的疑問作解釋,好比,該段代碼使用了堆棧,爲何須要堆棧而並不是數組,在此處代碼部分給出註釋 | 0 | 0 | 0 | 0 | 0 | 0 |
修訂時間 | 版本 | ||||||
2017/10/11 0:00:00 | V1.0 |