|
我們都明白命名的重要性,如果對(duì)命名不斷地關(guān)注,就需要考慮命名中的動(dòng)詞和名詞,特別的情況是動(dòng)詞的人稱(chēng)和名詞的數(shù)量。
在.NET Framework的Guideline中,有專(zhuān)門(mén)一章討論了命名規(guī)范,包括大小寫(xiě)、單詞的選擇等,卻沒(méi)有涉及到人稱(chēng)和數(shù)量,下面來(lái)討論一下這兩方面的內(nèi)容。
名詞的數(shù)量
首先來(lái)看數(shù)量。名詞的單數(shù)和復(fù)數(shù)在語(yǔ)義上有著明顯的不同,為了提高可讀性,數(shù)量需要認(rèn)真地考慮。比如:
- 屬性(Property):System.Collections.Generic.DictionaryTKey, TValue中的Keys和Count是好的例子。字段與此類(lèi)似;
- 方法名中的名詞:在JS中我們熟悉的getElementById和getElementsByTagName;
- 局部變量:與屬性相比,我們更可能遭遇的是局部變量。比如,用變量來(lái)表示一個(gè)人的名字,可以用string name; 如果是多個(gè)人的名字,則可以用Liststring names。
一般地,單數(shù)表達(dá)的語(yǔ)義是?(0或1);復(fù)數(shù)表達(dá)的語(yǔ)義是*(0、1或多個(gè))。關(guān)于名詞的數(shù)量很容易理解,相關(guān)的規(guī)則也容易遵循。
動(dòng)詞的人稱(chēng)
下面再來(lái)考慮動(dòng)詞的人稱(chēng)。在需要考慮命名的對(duì)象中,包括命名空間、類(lèi)型、各種類(lèi)型成員,只有方法是動(dòng)詞,語(yǔ)義上表示一個(gè)行為。關(guān)于它的人稱(chēng),來(lái)看一個(gè).NET Framework中的例子。在 System.Collections.Generic.StackT中,有一個(gè)Contains(T item)方法,對(duì)于這樣的代碼:
if (theStack.Contains(1)){ // Do something.}
NET技術(shù):淺析.NET開(kāi)發(fā)過(guò)程中命名的數(shù)量和人稱(chēng),轉(zhuǎn)載需保留來(lái)源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。