命名規(guī)則
我們提倡通常所說的匈牙利命名法,該命名法用來紀(jì)念著名的微軟程序員Charles Simonyi, 他嚴(yán)格遵守了這一命名原則. 該命名法的價值在于通過命名本身就提供了一個統(tǒng)一的方法來確認(rèn)給定的容器的使用和特性,而無需在其他的代碼處來尋找到底它們來自哪里,例如是否全局變量還是傳遞的一個參數(shù),這個格式已被很多程序員采納.
變量和參數(shù)
如果你在描述性的變量名之前加上一個小寫的字母,就可以很容易的分辨該變量是全局的還是本地,或者是作為一個參數(shù)來傳遞。
字母 |
含義 |
例子 |
g |
全局變量 |
gMyGlobal |
t |
局部變量 |
tMyVar |
s |
代碼局部 var* |
sMyVar |
p |
參數(shù) |
pMyParam |
k |
常數(shù)* |
kMyNumber |
u |
用戶自定義的屬性 |
uMyProp |
*僅對runtime Revolution, MetaCard, 和 Visual Basic 適用.
注意: 關(guān)于 "p": 有一些讀者建議 "p" 不應(yīng)該用作參數(shù),因為lingo和AppleScript用“p”來定義properties,(譯者注:Lingo中的property不是屬性,而是behavior里的特殊的局部變量,其作用域僅限于behavior內(nèi))
一些常用的命名變量和參數(shù)的建議:
- 在你的代碼的第一行就聲明所有的全局變量.
- 如果你的語言支持局部變量,也要在程序的執(zhí)行代碼前聲明這些局部變量.
- 要節(jié)儉的使用全局變量,全局變量通常在你的代碼中很難尋找,因為全局變量可以出現(xiàn)在任何的地方,但是如果你需要使用全局變量,就要使用全局變量.
- 變量名一定要具有描述性,請不要用這樣的變量名"temp," "var1," 或者那些沒有含義的名字,應(yīng)該用這樣的名字"tProjPath."
- 上述原則的一個例外是計數(shù)器,因為它的功能就是在循環(huán)中計數(shù),通常地,計數(shù)器都用小寫的變量名 "i" 以及后續(xù)的字母 (下一個用 "j," 然后是 "k," 和 "l.") 除非你要建立一個嵌套的循環(huán),否則不要使用 "j" 等.
下面這個例子就應(yīng)用了上面的一些原則 on myHandler pNumPeople,pNames
global gFilePath
global kMaxPeople,kMinPeople -- constants
if pNumPeople > kMaxPeople then exit myHandler
if pNumPeople < kMinPeople then exit myHandler
repeat with i = 1 to the num of items in pNames
put item i of pNames & cr after tFileData
end repeat
open file gFilePath
write tFileData to file gFilePath
close file gFilePath
end myHandler
句炳和功能函數(shù)
- 用小寫,除非在下面說明的情形Use all lower case, except where noted below
- 在復(fù)合詞里除第一個詞外剩余的詞第一個字母都大寫 (如. doubleClickList). 這一條應(yīng)用在所有的句柄,函數(shù)名,以及其他你所使用的語言的情形下。
- 自定義的句柄和函數(shù)名首字母大寫。
- 避免使用下滑線來連接不同的詞,(如. my_ugly_handler_name). 因為雙擊也沒有辦法全選整個復(fù)合詞。
例子: on MyHandler
global gFilePath
put cd fld "Names" into tNames
set the directory to pFilePath
put the files into tFileList
pu tconvertDirector(ytFileList) into tDirectory
if tNames = tDirectory then pass myHandler
end MyHandler
出處:藍(lán)色理想
責(zé)任編輯:藍(lán)色
上一頁 常用的技巧-續(xù) 下一頁
◎進入論壇Flash專欄版塊參加討論
|