Skip to main content

Общие правила

  1. Форматирование кода должно соответствовать Kotlin Coding Conventions. Обратите внимание на пункты, которые не исправляются автоматическим форматированием IDE:

  2. Содержимое класса должно быть расположенно в следующем порядке:

    • Объявление свойств и блока инициализации
    • Второстепенные конструкторы
    • Объявление методов в порядке сокращения видимости
      • public
      • internal
      • protected
      • private
    • Объект-компаньон
    • Внутренние классы
    • Вложенные классы, интерфейсы, объекты
  3. Без необходимости не используйте вложенные классы и интерфейсы:

    • Внутренние (Inner) классы имеет смысл делать только когда в нем необходима ссылка на объект внешнего класса. Такие классы отдельно требуют модификатор inner
    • Вложенные (Nested) классы имеет смысл делать только если он логически зависим от внешнего класса и необходимо ограничить видимость (scope) такого вложенного класса/интерфейса. Например, интерфейс слушателя событий EventsListener логично делать вложенным в класс конкретной вью-модели, реализующей интерфейс EventsDispatcherOwner для слушателя EventsListener. Потому что объекты интерфейса EventsListener используются только внутри вью-модели и вне этой конкретной вью-модели такой интерфейс не имеет смысла и нигде использоваться не будет.
  4. Выносите утилитарный код в функции верхнего уровня в отдельный файл без создания дополнительных классов или объектов.

  5. Настройте в Android Studio официальный стиль кода для Kotlin, чтобы корректно срабатывало автоматическое форматирование кода (сочетание клавиш для клавиатуры). Отключите сокращение импортов через звезду import *.

    Помимо включения Use single name import важно не упустить пакеты-исключения - они перечислены ниже в разделе Packages to Use import with * - оттуда тоже нужно удалить все, кроме котлин синтетиков, но мы их не используем.

    img.png

  6. Настройте форматирование кода, отключите галочку, чтобы не добавлялась лишняя запятая img.png