ruby - 你如何决定在 Ruby 中调用哪个别名方法?

标签 ruby

在 Ruby API 中,我注意到很多方法都有别名。例如,要遍历 String 中的行,我可以调用 str.linesstr.each_line

您如何决定使用哪一个?某些别名是否因历史原因而被弃用并保留?还是别名只是 Ruby 哲学的一部分,即许多方法可以做同样的事情,并根据代码的可读性来选择别名?

最佳答案

通常会提供许多做同样事情的方法,以使您的代码更具表现力和“像句子一样”。

#lines 可能会让这段代码读起来更像一个句子:

if paragraph.lines.count < 3
  puts "Your paragraph is small and pathetic."
end

虽然 #each_line 在这里读起来可能更好:

report_file.each_line do |line|
  process line
end

关于ruby - 你如何决定在 Ruby 中调用哪个别名方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8405684/

相关文章:

ruby - 如何降低使用 selenium 截取的屏幕截图的质量或尺寸?

ruby-on-rails - 在 Ruby on Rails 中使用三个模型显示联接

ruby - 如何从 shapefile .prj 中读取 WKT?

ruby - YAML (Ruby) 加载 "on"为真

ruby-on-rails - Rails 对象关系和 JSON 渲染

ruby-on-rails - Ruby给了我类似其他人的四个失败

ruby - @var = var_val 和 self.send ("var=", var_val) 之间有区别吗?

ruby - 动态救援条款,此代码如何工作?

ruby - 不调用 `Hash#to_a` 将 Ruby 哈希转换为数组

ruby-on-rails - 使用 String#split 方法