命名规则
我们提倡通常所说的匈牙利命名法,该命名法用来纪念著名的微软程序员Charles Simonyi, 他严格遵守了这一命名原则. 该命名法的价值在于通过命名本身就提供了一个统一的方法来确认给定的容器的使用和特性,而无需在其他的代码处来寻找到底它们来自哪里,例如是否全局变量还是传递的一个参数,这个格式已被很多程序员采纳.
变量和参数
如果你在描述性的变量名之前加上一个小写的字母,就可以很容易的分辨该变量是全局的还是本地,或者是作为一个参数来传递。
字母 |
含义 |
例子 |
g |
全局变量 |
gMyGlobal |
t |
局部变量 |
tMyVar |
s |
代码局部 var* |
sMyVar |
p |
参数 |
pMyParam |
k |
常数* |
kMyNumber |
u |
用户自定义的属性 |
uMyProp |
*仅对runtime Revolution, MetaCard, 和 Visual Basic 适用.
注意: 关于 "p": 有一些读者建议 "p" 不应该用作参数,因为lingo和AppleScript用“p”来定义properties,(译者注:Lingo中的property不是属性,而是behavior里的特殊的局部变量,其作用域仅限于behavior内)
一些常用的命名变量和参数的建议:
- 在你的代码的第一行就声明所有的全局变量.
- 如果你的语言支持局部变量,也要在程序的执行代码前声明这些局部变量.
- 要节俭的使用全局变量,全局变量通常在你的代码中很难寻找,因为全局变量可以出现在任何的地方,但是如果你需要使用全局变量,就要使用全局变量.
- 变量名一定要具有描述性,请不要用这样的变量名"temp," "var1," 或者那些没有含义的名字,应该用这样的名字"tProjPath."
- 上述原则的一个例外是计数器,因为它的功能就是在循环中计数,通常地,计数器都用小写的变量名 "i" 以及后续的字母 (下一个用 "j," 然后是 "k," 和 "l.") 除非你要建立一个嵌套的循环,否则不要使用 "j" 等.
下面这个例子就应用了上面的一些原则 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
句炳和功能函数
- 用小写,除非在下面说明的情形Use all lower case, except where noted below
- 在复合词里除第一个词外剩余的词第一个字母都大写 (如. doubleClickList). 这一条应用在所有的句柄,函数名,以及其他你所使用的语言的情形下。
- 自定义的句柄和函数名首字母大写。
- 避免使用下滑线来连接不同的词,(如. my_ugly_handler_name). 因为双击也没有办法全选整个复合词。
例子: 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
出处:蓝色理想
责任编辑:蓝色
上一页 常用的技巧-续 下一页
◎进入论坛Flash专栏版块参加讨论
|