Files

1.8 KiB
Raw Permalink Blame History

Правила именования и стиль кода

Мы придерживаемся рекомендаций Effective Dart и внутренних правил компании.

Именование

Интерфейсы

  • Начинаются с заглавной буквы I.
  • Пример: IAuthRepository, IUserRepository.

Классы и файлы

  • Классы: UpperCamelCase. Приватные — с префиксом _. Должны содержать тип в конце (например, UserEntity).
  • Файлы: snake_case. Структура: [раздел]_[тип].dart. Пример: user_details_screen.dart.

Репозитории

  • Основная реализация — без постфикса (AuthRepository).
  • Альтернативные реализации — с постфиксами: Network, Local, Mock.

Виджеты

  • Экраны: Постфикс Screen (ShopListScreen).
  • Контент экрана: Постфикс View (ShopListView).
  • Глобальные виджеты: Префикс App (AppButton).
  • В названии не должно быть слова widget.

Методы и переменные

  • Методы: Начинаются с глагола (fetch, put, update, delete). Не должны содержать And/Or.
  • Переменные/Константы: lowerCamelCase.

Структура класса (порядок элементов)

  1. Конструкторы (default, named, factory).
  2. Static элементы (methods, const fields).
  3. Инстанс-поля (final, потом обычные; public, потом private).
  4. Геттеры/Сеттеры.
  5. Методы (overridden, public, protected, private).