選擇遵循規則與慣例的變數名稱
軟體開發人員曾經有句著名的話:「軟體開發最困難的部分就是命名」。變數的名稱不僅必須遵循特定語法規則,也應該用來讓程式碼更容易閱讀且易於了解。 這對一行程式碼來說,是很嚴格的要求!
變數名稱規則
有一些 C# 編譯器強制執行的變數命名規則。
- 變數名稱可包含英數字元與底線字元。 不允許使用井字號
#
、破折號-
與貨幣符號$
等特殊字元。 - 變數名稱的開頭必須是字母或底線,而不是數字。 開發人員會針對特殊用途使用底線,因此請試著暫時不要使用它。
- 變數名稱「不得」為 C# 關鍵字。 例如,不允許使用下列變數名稱宣告:
float float;
或string string;
。 - 變數名稱會區分大小寫,這表示
string MyValue;
與string myValue;
是兩個不同的變數。
變數名稱慣例
慣例是軟體開發社群達成協議的建議。 雖然您可以自由決定不要遵循這些慣例,但它們很普遍,可能會讓其他開發人員難以了解您的程式碼。 您應該練習採用這些慣例,使其成為您自己的程式碼撰寫習慣。
- 變數名稱應該使用駝峰式大小寫,這是一種撰寫樣式,它會在第一個單字開頭使用小寫字母,並在每個後續單字的開頭都使用大寫字母。 例如:
string thisIsCamelCase;
。 - 變數名稱在您的應用程式中應該是具描述性且有意義的。 您應選擇您的變數名稱,以代表它所保留的資料種類 (而非資料類型)。 例如:
bool orderComplete;
、NOTbool isComplete;
。 - 變數名稱應該是一或多個完整的單字附加在一起。 請勿使用縮寫,因為閱讀您程式碼的其他人可能不清楚該變數的名稱。 例如:
decimal orderAmount;
、NOTdecimal odrAmt;
。 - 變數名稱不應包含變數的資料類型。 您可能會看到一些使用樣式 (例如
string strMyValue;
) 的建議。 這是多年前常用的樣式。 不過,大部分的開發人員不再遵循這項建議,而且有充分的理由不要使用它。
假設我想要使用這個變數來儲存代表某人名字的資料,範例 string firstName;
會遵循所有的規則和慣例。
變數名稱範例
以下是一些變數宣告範例 (使用一般資料類型):
char userOption;
int gameScore;
float particlesPerMillion;
bool processedCustomer;
其他命名慣例
上述規則和慣例適用於區域變數。 區域變數是範圍在方法主體內的變數,或是使用最上層陳述式的主控台應用程式中的變數 (如本課程模組中的程式碼)。
有其他類型的建構可讓您在應用程式中使用,而且許多建構都有自己的慣例。 例如,類別通常用於 C# 程式設計,並且具有相關聯的慣例。 雖然您不會在此課程模組中建立類別,但請務必知道您剛才學到的命名慣例適合較大的命名架構。