你需要围绕Ruby需要的括号吗?

时间:2014-11-04 00:30:05

标签: ruby

在Ruby中,require('my_thing')相当于require 'my_thing'?这只是ruby约定,你不需要在paranetheses包装函数的参数吗?

3 个答案:

答案 0 :(得分:8)

你是对的,你不需要它们,但是,我认为你需要知道一件重要的事情,然后再决定在方法调用中抛弃它们(关于你的约定问题):

遵循最佳实践

根据Ruby Style Guide

  

省略围绕参数的括号,作为一部分的方法   内部DSL(例如Rake,Rails,RSpec),具有"关键字"   Ruby中的状态(例如attr_reader,puts)和属性访问方法。   在所有其他方法调用的参数周围使用括号。

由于require有"关键字"在Ruby中的状态,不使用括号是可以的。但是,如果你制作了自己的my_require方法,那么使用它们会更好。

答案 1 :(得分:3)

允许在参数周围省略括号是一种语言功能,而非惯例。

Kernel模块上定义的以小写字母开头的方法省略括号。 require就是其中之一。

答案 2 :(得分:1)

您不需要括号。 require('my_thing')相当于require 'my_thing'。你是对的,这只是红宝石惯例。