对于包含给定类SomeCoolClass的文件,什么是正确的文件名?
1. somecoolclass.rb 2. some_cool_class.rb 3. some-cool-class.rb 4. SomeCoolClass.rb
或其他一些变化?
我注意到在Ruby stdlib中使用了版本1,2和3.
只使用Ruby(即不是Rails),命名只是一种约定.在Rails中,使用下划线的惯例是必要的(几乎).
我想约定#2 lowercase_and_underscore.rb
是比较常见的,看起来还不错,但文章在这里说lowercasenounderscore.rb
的是Ruby的约定.
选择哪种常规更常见,哪种更喜欢.最重要的是在项目中保持一致.
我建议使用带下划线的小写字符(问题中的数字2).确实,这个命名方案是Rails中的约定,在非Rails项目中不是必需的.但是,我仍然坚持Rails惯例,因为大多数Ruby程序员可能仍然专门为Rails使用Ruby.
我个人认为连字符作为单词分隔符一般会带来最大的可读性和可打字性,因此我建议尽可能使用(在某些情况下,不能使用连字符,例如在大多数语言中使用标识符).需要记住的一件重要事情是,您选择的方案将影响用户将与您的lib一起使用的require语句,并且您希望避免使用与库名称不同的gem名称.
坏# gem install my_cool_lib require 'my-cool-lib' # gem install MyCoolLib require 'my_cool_lib'好
# gem install my_cool_lib require 'my_cool_lib' # gem install my-cool-lib require 'my-cool-lib'
不幸的是,少数几个库违反了这个简单的可用性规则.不要成为那些图书馆之一.:)