識別字(Identifiers)

識別字是用來命名變數、方法、參數等程式元件的文字串,建議搭配語義清晰的英文單字組合,實現可自我註解的程式(範例:PlayersHandSocialSecurityNum)。

所謂識別字,簡單來說就是變數、方法、屬性等項目的名稱。這類名稱不能隨意取,必須遵守一套固定規則,就跟人們的姓名需要符合取名規範是同樣道理。

命名用字規則

位置允許字元禁止字元補充說明
開頭字元小寫 a-z、大寫 A-Z、底線_、@數字 0-9@僅能放在開頭,一般開發場景不建議使用
後續字元小寫 a-z、大寫 A-Z、底線_、數字 0-9@名稱中間、結尾不可出現@

合法識別字範例

userName
PlayerScore
_totalMoney
Age
StudentID
maxHP
OrderList
isLogin
_apple
_123Rate
_UserInfo
@int
@class
@string
@whileCode language: JavaScript (javascript)

不合法識別字範例

開頭使用數字
99Game
123Name

中間/結尾包含 @ 符號
0user
user@Name
score@
my@var

以下直接使用 C# 一般關鍵字
int
class
static
void

包含非法特殊符號
user name
student#id
money&numCode language: PHP (php)

區分大小寫

識別字會區分英文大小寫,舉例如下:

int totalMovieCount;
int TotalMovieCount;
int TotalmovieCount;

這三行代表完全互不相同的變數,語法上雖合法,但極易造成混淆,不建議撰寫這類程式碼。

完整程式範例

// See https://aka.ms/new-console-template for more information
using System;

Console.WriteLine("Hello, World!");

int totalMovieCount;
int TotalMovieCount;
int TotalmovieCount;


// ========== 一、不合格識別字(編譯會報錯) ==========
// 1. 開頭為數字
int 99Game;
string 123Name;
double 0user;

// 2. 名稱中間或結尾帶有@符號
int user@Name;
float score@;
bool my@var;

// 3. 未加@轉義,直接使用C#原生關鍵字
int int;
string class;
double static;
void void;

// 4. 含有空白、#、& 等不允許的特殊符號
int user name;
string student#id;
decimal money#

// ========== 二、合格識別字(可正常編譯) ==========
// 標準推薦寫法(不含@,規整易懂)
int userName;
int PlayerScore;
float _totalMoney;
bool isLogin;
string StudentID;

// 語法合法但不推薦(以@轉義關鍵字,僅特殊場景使用)
int @int;
string @class;
double @static;
void @void;
Code language: PHP (php)

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *