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

Gar*_*all 3 ruby

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

你如何决定使用哪一个?是否有一些别名被弃用并保留历史原因?或者别名只是Ruby哲学的一部分,有许多方法可以做同样的事情并根据可读代码进行选择?

Car*_*auf 6

通常会提供许多执行相同操作的方法,以使您的代码更具表现力并且"像句子一样".

#lines 可能会使这段代码更像一个句子:

if paragraph.lines.count < 3
  puts "Your paragraph is small and pathetic."
end
Run Code Online (Sandbox Code Playgroud)

虽然#each_line在这里可能会更好看:

report_file.each_line do |line|
  process line
end
Run Code Online (Sandbox Code Playgroud)