我是否应该将 ruby 单行 if 语句拆分为多行 if 语句,因为该行很长?

Should I split a ruby single-line if statement into multi-line if statement because the line is long?

我有一个ruby单行语句很长,大约200个字符。根据 ruby style guide,这里更喜欢单行 if 语句,因为正文是单行的。

address = Module::InnerModule::Class.new(long_address) if Module::Class.new(long_address).is_good? 

但是,200 个字符远远超过了通常的行长度阈值(通常最多为 120 个)。我是否应该将 if 语句拆分为多行语句以减少行的长度(或者我应该接受该行很长)?

if Module::Class.new(long_address).is_good? 
  address = Module::InnerModule::Class.new(long_address)

还有,如果分割后的线还很长怎么办?这里的最佳做法是什么?我是 Ruby 的新手,所以我将不胜感激任何有关此处最佳实践的建议。

撇开样式问题不谈,如果您想保持当前的语义,您可以在某些关键字和运算符处换行,而无需使用反斜杠转义换行符。例如:

address =
  Module::InnerModule::Class.new(long_address) if
    Module::Class.new(long_address).is_good?

否则,请更改您的语义或重构您的代码以适合您所需的行长度和所选样式。关于 如何 拆分行的问题是可以回答的,但是拆分、缩进或重构的“最佳”方式在很大程度上是主观的,并且主要是可读性和意图的结合。