【问题标题】:Kotlin coding conventions: Horizontal whitespaceKotlin 编码约定:水平空格
【发布时间】:2018-10-20 19:04:55
【问题描述】:

在 Kotlin 的 coding convention 中,在空白部分注意到:

作为一般规则,请避免任何形式的水平对齐。重命名 具有不同长度的名称的标识符不应影响 声明或任何用法的格式。

这是什么意思?

不应将标识符重命名为具有不同长度的名称 影响声明或任何用法的格式

【问题讨论】:

    标签: kotlin coding-style


    【解决方案1】:

    以下是违反该规则的示例:

    val b      = SomeFluentBuilder()
    val result = mutableListOf<String>()
    
    b.foo()
     .bar()
     .baz()
     .build()
    

    b 重命名为(例如)someFluentBuilder 会破坏声明中的对齐方式,也会破坏构建器的使用。

    【讨论】:

    • 能否为您的示例中的构建器部分添加正确的样式?
    • IntelliJ 中的 Ctrl-Alt-L(或 macOS 的 Cmd-Alt-L)将自动格式化您的代码(您可以选择官方的 kotlin 代码格式化样式)
    【解决方案2】:

    水平对齐是使用空白来水平移动文本,以便垂直排列。

    所以在已经提供的答案中......

    val b      = SomeFluentBuilder()
    val result = mutableListOf<String>()
    

    是水平对齐的示例,因为 'val b' 之后的附加空格用于 '=' 与下一行的等号对齐。正确的样式是:

    val b = SomeFluentBuilder()
    val result = mutableListOf<String>()
    

    进一步......为什么选择非常不具信息性的名字'b',而不是也许...... 跟在类名后面的“someFluentBuilder”?建议是选择名称只是为了便于对齐示例中的所有点方法调用。关键是不要采取措施使代码与上面或下面的行水平对齐。

    【讨论】:

      猜你喜欢
      • 2014-05-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-08-21
      • 2014-03-06
      • 1970-01-01
      相关资源
      最近更新 更多