mck*_*omo 1 ruby ruby-on-rails legacy-code suffix
嘿Stack Overflow研究员,
我需要你的帮助.几个月以来,我正在处理Ruby on Rails应用程序,它主要是Legacy.今天,我注意到代码库最奇怪的事情.有些文件虽然不是很多,但有重要的文件,包含几行最终的代码; 1.例如:Users.find(id); 1.这些后缀的出现不会产生任何形式的模式.有时会; 1出现在puts表达之后或表达之后,总会返回值,例如nil || 'default_value'; 1.
使用后缀是否有意义?这背后有什么理由吗?也许以前有一个工具可以使用Ruby代码并且; 1是注释的形式.我很乐意删除后缀,但我想确保它是100%安全的.
以下是在同一次提交中添加的项目的代码示例:
times = events.map{|x| [x.time, x.time_from_impression_id]};1
times = times.map{|x| (x.first - x.last) / 1.day}.sort;1
time_to_event_success = times[(times.length.to_f * 0.95).to_i]
events = events.select{|e| e.time_from_impression_id < time_to_event_success.days.ago};1
Run Code Online (Sandbox Code Playgroud)
小智 6
ruby中的分号以与换行符相同的方式终止语句.该; 1真的没有做什么有用的东西.
从逻辑上讲,您发布的代码相当于:
times = events.map{|x| [x.time, x.time_from_impression_id]}
1
times = times.map{|x| (x.first - x.last) / 1.day}.sort
1
time_to_event_success = times[(times.length.to_f * 0.95).to_i]
events = events.select{|e| e.time_from_impression_id <
time_to_event_success.days.ago}
1
Run Code Online (Sandbox Code Playgroud)
我唯一能想到的是,如果有人在IRB中测试代码,则添加; 1到行的末尾会阻止前一个语句的返回值回显.那或者他们不太明白隐含的回报和真实和虚假的价值观如何在红宝石中发挥作用.
| 归档时间: |
|
| 查看次数: |
60 次 |
| 最近记录: |