Ruby编程规约(上)
命名规约
全体
-
原则上 、 不使用单词的省略词 。
-
对于作用域小的循环变量 ,以 i, j, k 这样 的名字顺序使用 。
-
对于作用域小的变量名,可以使用类名的省略语 。 ( 例 : eo = ExampleObject.new )
类以及模块名 、 各 单词的每头一个字母大写 、 不要使用’ _’ (下划线)等分隔符 。 但是 、 像 HTTP 这样的通用缩略语,全都照样大写。
正 例 :
ExampleClass
HTTPClient
误 例 :
Example_Class
EXAMPLE_CLASS
HttpClient
HTTPclient
HTTP_Client
方法 名 全都 小写 、 各个单词之间用’ _ ’ 分隔 。 方法名中 使用动词的原形 。
正 例 :
add_something
误 例 :
addsSomething
Add_Something
返回真假值的方法的命名 , 在动词或形容词后追加’ ? ’ , 对 形容词 ,不用添加’ is_ ’ 。
正 例 :
visible?
误 例 :
is_visible
is_visible?
另外 , 在使用具有 破坏性和非破坏性的方法时候 ,要 在破坏性的方法名后追加’ ! ’ 。
例 :
split
split! # 具有破坏性的 split
常数名
类 和 模块 名以外 的常数名 , 全 都 用大写 , 单词之间用’ _ ’ 来分隔 。
例 :
EXAMPLE_CONSTANT
对于变量名 , 全都 用小写 , 单词之间用’ _ ’ 来分隔。
例 :
tmp
local_variable
@instance_variable
$global_variable
文件名
文件名全都使用小写字母 , 单词之间用’ _ ’ 来分隔 。 另外 、 可以把文件中的已经变换的主要类名作为文件名来使用 。 ( 把模块作为命名空间来使用的时候,同时使用目录名,可以 表现出层次结构。 )
例 :
foo.rb # 定义了 类 Foo
foo-bar.rb # 定义了 类 FooBar
foo/bar-baz.rb # 定义了 类 Foo::BarBaz
Copyright (C) 2007 Shugo Maeda
licensed under Creative Commons Attribution License