在Ruby API中,我注意到很多方法都有别名.例如,迭代String我可以调用的行str.lines或str.each_line.
你如何决定使用哪一个?是否有一些别名被弃用并保留历史原因?或者别名只是Ruby哲学的一部分,有许多方法可以做同样的事情并根据可读代码进行选择?
通常会提供许多执行相同操作的方法,以使您的代码更具表现力并且"像句子一样".
#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)