牛骨文教育服务平台(让学习变的简单)
  • ruby -w 写安全的代码。
  • 避免使用哈希作为可选参数。这个方法是不是做太多事了?(对象初始器是本规则的例外)。
  • 避免方法长于 10 行代码(LOC)。理想上,大部分的方法会小于 5 行。空行不算进 LOC 里。
  • 避免参数列表长于三或四个参数。
  • 如果你真的需要“全局”方法,把它们加到 Kernel 并设为私有的。
  • 使用模块变量代替全局变量。

    # 差
    $foo_bar = 1
    
    # 好
    module Foo
      class << self
        attr_accessor :bar
      end
    end
    
    Foo.bar = 1
    
  • 使用 OptionParser 来解析复杂的命令行选项及 ruby -s 来处理琐碎的命令行选项。

  • 使用 Time.now 而不是 Time.new 来获取系统时间。

  • 用函数式的方法编程,在有意义的情况下避免赋值 (mutation)。
  • 不要改变参数,除非那是方法的目的。
  • 避免超过三层的区块嵌套。
  • 保持一致性。在理想的世界里,遵循这些准则。
  • 使用常识。