官术网_书友最值得收藏!

2.3 程序編寫規范

下面給出兩段實現同樣功能的C# 代碼,如圖2.17 所示。

img

圖2.17 兩段實現同樣功能的C# 代碼

大家在學習時,愿意閱讀圖2.17 中的左側代碼還是右側代碼?相信大家更喜歡閱讀圖2.17 中的右側代碼,因為它看上去更加規整。這是一種基本的代碼編寫規范。本節將對C# 代碼的編寫規則及命名規范進行介紹。遵循一定的代碼編寫規則和命名規范可以使代碼更加規范化,對代碼的理解與維護起到至關重要的作用。

2.3.1 代碼編寫規則

img

代碼編寫規則通常對應用程序的功能沒有影響,但對改善對源代碼的理解是有幫助的。養成良好的習慣對于軟件的開發和維護都是很有益的,下面列舉一些常用的代碼編寫規則。

●在編寫C# 程序時,統一代碼縮進的樣式,比如統一縮進2 個字符或4 個字符。

●每編寫完一行C# 代碼,都應該換行編寫下一行代碼。

●在編寫C# 代碼時,應該合理使用空格,使代碼結構更加清晰。

●盡量使用接口,然后使用類實現接口,以提高程序的靈活性。

●關鍵的語句(包括聲明關鍵的變量)必須要寫注釋。

●建議局部變量在最接近使用它的地方聲明。

●不要使用goto 系列語句,除非是用在跳出深層循環時。

●避免編寫超過5 個參數的方法,如果要傳遞多個參數,則使用結構。

●避免書寫代碼量過大的try-catch 語句塊。

●避免在同一個文件中編寫多個類。

●生成和構建一個長的字符串時,一定要使用StringBuilder類型,而不使用string類型。

●對于if 語句,應該使用一對 “{  }” 把語句塊包含起來。

●switch 語句一定要配置default 語句來處理意外情況。

2.3.2 命名規范

img

命名規范在編寫代碼中起到很重要的作用,雖然不遵循命名規范程序也可以運行,但是使用命名規范可以更加直觀地了解代碼所代表的含義。下面介紹C# 中常用的一些命名規范。

1.兩種命名方法

在C# 中,常用的命名方法有兩種,分別是Pascal 命名法和Camel 命名法,下面分別進行介紹。

(1)用Pascal 命名法來命名方法和類型。以Pascal 命名法命名時,第一個字母必須為大寫,并且后面連接詞的第一個字母也要大寫。

學習筆記

Pascal 是以紀念法國數學家Blaise Pascal 而命名的一種編程語言,C# 中的Pascal命名法就是根據該語言的特點總結出來的一種命名方法。

例如,定義一個公共類,并在此類中創建一個公共方法,代碼如下。

img
img

(2)用Camel 命名法來命名局部變量和方法的參數。使用Camel 命名法命名時,變量或方法名中第一個單詞的首字母需要小寫。

學習筆記

Camel 命名法又稱為駝峰式命名法,它是由駱駝的體形特征推理出來的一種命名方法。

例如,聲明一個字符串變量和創建一個公共方法,代碼如下。

img

2.程序中的命名規范

在開發項目時,不可避免地要遇到各個程序元素的命名問題,比如項目的命名、類的命名、方法的命名等。例如,在圖2.18 中聲明了一個User 類,在圖2.19 中聲明了一個aaa 類。

img

圖2.18 聲明User 類

img

圖2.19 聲明aaa 類

從類的命名上很容易可以看出,圖2.18 中的User 類應該是與用戶相關的一個類,但是圖2.19 中聲明的aaa 類,即使再有想象力的人,恐怕也想象不出這個類到底是做什么用的。由這兩個例子可以看出,在對程序元素命名時,如果遵循一定的命名規范,將使代碼更加具有可讀性。下面介紹常用程序元素的基本命名規范。

●在命名項目時,可以使用公司域名+ 產品名稱,或者直接使用產品名稱。

例如,在命名項目時,可以將項目命名為 “mingrisoft.ERP” 或 “ERP”。其中,mingrisoft 是公司域名,ERP 是產品名稱。

●用有意義的名字定義命名空間,如公司名、產品名。

例如,利用公司名和產品名定義命名空間,代碼如下。

img
img

●接口的名稱加前綴 “I”。

例如,創建一個公共接口Iconvertible,代碼如下。

img

●類的命名最好能夠體現出類的功能或操作。

例如,創建一個名稱為Operation 的類,用來作為運算類,代碼如下。

img

●方法的命名:一般將其命名為動賓短語,表明該方法的主要作用。

例如,在公共類File 中創建CreateFile 方法和GetPath 方法,代碼如下。

img

●在定義成員變量時,最好加前綴 “_”。

例如,在公共類DataBase 中聲明一個私有成員變量_connectionString,代碼如下。

img
主站蜘蛛池模板: 双峰县| 台南市| 抚远县| 辽源市| 长武县| 澄城县| 南汇区| 昭平县| 商洛市| 平定县| 北安市| 红安县| 镇平县| 云浮市| 噶尔县| 嘉义县| 澎湖县| 东乌| 留坝县| 沿河| 日土县| 万州区| 黔西县| 前郭尔| 桃江县| 邹平县| 屏南县| 寿宁县| 廊坊市| 双柏县| 马尔康县| 和硕县| 唐海县| 扬中市| 孟村| 修武县| 阳城县| 安丘市| 阿勒泰市| 广元市| 丰原市|