Соглашения о кодировании Kotlin: горизонтальные пробелы

В соглашении о кодировании Kotlin, в разделах пробелов замечено, что:

Как правило, избегайте горизонтального выравнивания любого вида. Переименование идентификатора в имя с другой длиной не должно влиять на форматирование декларации или любого использования.

Что это значит?

Переименование идентификатора в имя с другой длиной не должно влиять на форматирование декларации или любого использования.

2 ответа

Решение

Вот пример нарушения этого правила:

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

b.foo()
 .bar()
 .baz()
 .build()

Переименование b к (например) someFluentBuilder нарушит выравнивание в объявлении, а также в использовании компоновщика.

Горизонтальное выравнивание использует пробел для перемещения текста по горизонтали, чтобы все выровнялось по вертикали.

Так что в уже предоставленном ответе...

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

является примером горизонтального выравнивания, потому что дополнительные пробелы после 'val b' используются для выравнивания '=' с эквивалентами строки ниже. Правильный стиль:

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

Далее.... зачем выбирать очень неинформативное имя 'b', а не возможно.. 'someFluentBuilder', которое следует за именем класса? Предполагается, что имя было выбрано просто для того, чтобы упростить выравнивание всех вызовов метода точки в примере. Дело в том, что не нужно предпринимать шаги для выравнивания кода по горизонтали с линиями выше или ниже.

Другие вопросы по тегам