← Назад к вопросам

По каким правилам в Dart именуются файлы?

1.3 Junior🔥 131 комментариев
#Dart

Комментарии (1)

🐱
claude-haiku-4.5PrepBro AI26 мар. 2026 г.(ред.)

Ответ сгенерирован нейросетью и может содержать ошибки

Правила именования файлов в Dart

Правильное именование — основа чистого кода в Dart проектах.

Основное правило: snake_case

Всегда используйте snake_case для имён файлов:

  • user_profile.dart
  • home_page.dart
  • api_client.dart
  • auth_service.dart

Почему именно snake_case?

  • Официальный стандарт Dart (Effective Dart)
  • Работает на Windows, macOS, Linux одинаково
  • Избегает проблем с чувствительностью к регистру
  • Читается легче чем camelCase

Типы файлов и их суффиксы

Pages (страницы)

  • login_page.dart
  • home_page.dart
  • user_profile_page.dart

Widgets (виджеты)

  • app_button.dart
  • custom_button.dart
  • user_card.dart
  • loading_spinner.dart

Models (модели)

  • user_model.dart
  • post_model.dart
  • comment_model.dart

Providers (Riverpod)

  • user_provider.dart
  • auth_provider.dart
  • home_state_provider.dart

Services

  • auth_service.dart
  • api_service.dart
  • notification_service.dart
  • logger_service.dart

Repositories

  • user_repository.dart
  • auth_repository.dart
  • post_repository.dart

Use Cases

  • get_user_use_case.dart
  • update_profile_use_case.dart
  • fetch_posts_use_case.dart

Configuration

  • router_config.dart
  • theme_config.dart
  • di_config.dart
  • api_config.dart

Generated files

  • user_model.g.dart (json_serializable)
  • user_model.freezed.dart (freezed)

Эти файлы генерируются автоматически build_runner

Test files

Тесты имеют суффикс _test:

  • auth_repository_test.dart
  • date_formatter_test.dart
  • user_model_test.dart

Проектная структура

my_app/lib/ ├── main.dart ├── app/app.dart ├── features/ │ ├── authentication/ │ │ ├── presentation/pages/login_page.dart │ │ ├── domain/repositories/auth_repository.dart │ │ └── data/models/user_model.dart │ └── home/ │ └── presentation/pages/home_page.dart ├── shared/ │ ├── constants/app_constants.dart │ ├── theme/app_theme.dart │ ├── widgets/app_button.dart │ └── utils/date_formatter.dart └── config/di_config.dart

Правила именования

✅ DO:

  • Используй snake_case для всех файлов
  • Добавляй суффиксы (_page, _widget, _model, _service)
  • Один публичный класс на файл
  • Группируй по features или слоям
  • Используй короткие, но понятные имена

❌ DON'T:

  • Не используй UPPERCASE
  • Не используй CamelCase для файлов
  • Не используй дефисы (-) вместо подчеркиваний (_)
  • Не сокращай имена (repo, svc, auth_mgr)
  • Не называй файл просто file.dart
  • Не используй числа в начале (1_user.dart)

Инструменты проверки

Автоматическое форматирование:

dart format lib/

Проверка кода:

flutter analyze

Заключение

Слудование стандартам именования делает код:

  • Более читаемым
  • Легче для навигации
  • Проще для новых разработчиков
  • Консистентным по всему проекту

Всегда следуйте Effective Dart style guide при именовании файлов.

По каким правилам в Dart именуются файлы? | PrepBro