Общие правила
Форматирование кода должно соответствовать Kotlin Coding Conventions. Обратите внимание на пункты, которые не исправляются автоматическим форматированием IDE:
- Организация исходного кода - структура каталогов, пакетов, имена файлов и т.д.
- Правила наименований - naming
- Правила комментирования
- Избегайте избыточных конструкций
- Идиоматичное применение Kotlin
Содержимое класса должно быть расположенно в следующем порядке:
- Объявление свойств и блока инициализации
- Второстепенные конструкторы
- Объявление методов в порядке сокращения видимости
- public
- internal
- protected
- private
- Объект-компаньон
- Внутренние классы
- Вложенные классы, интерфейсы, объекты
Без необходимости не используйте вложенные классы и интерфейсы:
- Внутренние (Inner) классы имеет смысл делать только когда в нем необходима ссылка на объект внешнего класса. Такие классы отдельно требуют модификатор inner
- Вложенные (Nested) классы имеет смысл делать только если он логически зависим от внешнего класса и необходимо ограничить видимость (scope) такого вложенного класса/интерфейса. Например, интерфейс слушателя событий EventsListener логично делать вложенным в класс конкретной вью-модели, реализующей интерфейс EventsDispatcherOwner для слушателя EventsListener. Потому что объекты интерфейса EventsListener используются только внутри вью-модели и вне этой конкретной вью-модели такой интерфейс не имеет смысла и нигде использоваться не будет.
Выносите утилитарный код в функции верхнего уровня в отдельный файл без создания дополнительных классов или объектов.
Настройте в Android Studio официальный стиль кода для Kotlin, чтобы корректно срабатывало автоматическое форматирование кода (сочетание клавиш для клавиатуры). Отключите сокращение импортов через звезду import *.
Помимо включения Use single name import важно не упустить пакеты-исключения - они перечислены ниже в разделе Packages to Use import with * - оттуда тоже нужно удалить все, кроме котлин синтетиков, но мы их не используем.
Настройте форматирование кода, отключите галочку, чтобы не добавлялась лишняя запятая