Новое:Talanto осенью: фильтры с числами, отклик по шагам и каталог компаний

+1 434новые вакансии за сутки·94 246вакансий открыто сейчас·Новое:Talanto осенью: фильтры с числами, отклик по шагам и каталог компаний

Новые вакансии в TelegramРаботодателям
Talanto
Вакансии
Компании7 308
РезюмеAIПодготовкаСтатьи
BoostТарифыBoost
Войти

Не нашли подходящее?

Пусть нужная вакансия найдёт вас сама.

  1. Подборка в TelegramНовые вакансии по вашему фильтру — сразу в бота.Подключить
  2. Мэтчи по резюмеЗагрузите резюме — покажем, где вы подходите лучше всего.Загрузить
  3. Сохранить фильтрНастройте поиск один раз и возвращайтесь к новым вакансиям.Настроить
Что нового на TalantoTalanto осенью: фильтры с числами, отклик по шагам и каталог компаний

Для работодателей

Опубликуйте вакансию — отклики придут в ваш кабинет.

  1. Вакансиябесплатно
  2. Откликиконтакты бесплатно
  3. Наймэтапы и интервью

40 компаний публикуют вакансии напрямую · 4 405 кандидатов открыты к предложениям

Разместить вакансию

Популярные направления

Все подборки
  • Python17 154
  • Облачные технологии14 078
  • QA вакансии3 452
  • Backend вакансии2 118
  • Инженер данных1 805
  • Продакт-менеджер1 259

Разработка

  • Android1 860
  • iOS1 698
  • Fullstack вакансии993
  • AI вакансии954
  • Frontend вакансии752
  • Mobile вакансии44

По стеку

  • Go8 701
  • Java6 547
  • Node.js2 028
  • .NET1 722
  • Kotlin1 614
  • Rust1 460
  • C#710
  • PHP687
  • C++565

DevOps и инфраструктура

  • Kubernetes7 771
  • DevOps вакансии6 052
  • Linux-инфраструктура5 481
  • Terraform / IaC4 268
  • CI/CD3 245
  • Мониторинг и Observability1 790
  • SRE572
  • Кибербезопасность461

Аналитика и данные

  • Data Scientist1 142
  • Бизнес-аналитик922
  • Аналитик данных860
  • Системный аналитик153

Другие направления

  • Проджект-менеджер626
  • UI/UX дизайн147
  • Ручное тестирование14

По регионам

  • Вакансии в США44 593
  • Вакансии в Европе23 875
  • Вакансии в Канаде4 546
  • Работа в России3 899

По формату

  • Удалённые вакансии75 527
  • Релокация в США44 593
  • Гибридная работа12 396
  • Офисная работа7 095

По уровню

  • Senior вакансии42 862
  • Middle вакансии21 056
  • Junior вакансии6 732

Сейчас нанимают

Все компании
  • Wise190 вакансий
  • Rakuten189 вакансий
  • ASML166 вакансий
  • Grab137 вакансий
  • Celonis38 вакансий
  • Spotify35 вакансий
  • Adyen28 вакансий
  • Infobip27 вакансий
  • Monzo20 вакансий
  • Darktrace16 вакансий

Вакансии из 344 источников: карьерные страницы компаний и джоб-борды.

КомпанииО насНовостиПубличная офертаУсловия использованияПолитика конфиденциальностиПоддержка
←К теме FlutterВсе вопросы
FlutterMiddleТеория

В чём разница между hot reload и hot restart во Flutter?

В закладки
Сначала попробуйте ответить сами30 секунд
Сравнить с ответом ↓

Hot reload патчит код в памяти, сохраняя State виджетов и навигацию, но не вызывает initState повторно. Hot restart полностью перезапускает Dart VM, сбрасывая всё состояние — как перезапуск приложения.

Hot Reload

Команда: r в терминале, или кнопка молнии в IDE.
Принцип: Dart VM получает новый исходник, компилирует изменённые библиотеки и патчит классы в памяти. Дерево виджетов пересобирается с вызовом build(), но объекты State не пересоздаются — они остаются живыми.

Что сохраняется:

  • Все поля State (счётчики, текст в контроллерах, позиция скролла).
  • Текущий маршрут навигации.
  • Подписки, таймеры, стримы, открытые сокеты.

Что не применяется через hot reload:

  • Изменения в initState(), didInitDependencies() — они не вызываются повторно.
  • Изменения в main() и глобальных переменных верхнего уровня.
  • Изменения в enum и generics (требуют hot restart).
  • Добавление новых полей в существующий State — новые поля будут null, пока не будет hot restart.
class _CounterState extends State<Counter> {
  int _count = 0; // сохранится при hot reload

  @override
  void initState() {
    super.initState();
    // изменения здесь не применятся при hot reload
    _count = 10;
  }

  @override
  Widget build(BuildContext context) {
    return Text('$_count'); // изменения в build() применятся мгновенно
  }
}

Hot Reload vs Hot Restart во Flutter

Оба инструмента ускоряют разработку, но работают на разных уровнях рантайма Dart VM.

Hot Restart

Команда: R (заглавная) в терминале, или кнопка перезапуска в IDE.
Принцип: Dart VM полностью останавливается и запускается заново. Все объекты уничтожаются, main() вызывается с нуля. Занимает 2-5 секунд против ~0.3 с для hot reload.

Что сбрасывается:

  • Весь State приложения.
  • Навигационный стек.
  • Глобальные переменные и singleton-и.
  • Зависимости, инициализированные в main().

Когда обязательно нужен hot restart:

  • Изменили main(), провайдеры верхнего уровня, тему приложения.
  • Добавили новый platform channel или плагин.
  • Поменяли enum, type alias, extension.
  • Получили сообщение "Reload not applied. Unable to hot reload".

Практическое сравнение

# Запуск
flutter run

# В терминале:
# r  — hot reload (сохраняет State)
# R  — hot restart (сбрасывает всё)
# q  — выход
# p  — показать границы виджетов (debugPaintSizeEnabled)

Подводные камни

  • Hot reload не вызывает initState повторно — если логика инициализации изменилась, нужен hot restart.
  • Новые поля State после hot reload будут иметь значение null вместо инициализированного — может вызвать NPE в runtime.
  • Изменения в нативном коде (Kotlin/Swift, plugin) не применяются ни hot reload, ни hot restart — нужен полный пересбор flutter run.
  • Hot reload в web работает через HMR браузера и медленнее, чем на мобильных платформах.
  • При использовании Riverpod ProviderScope или BLoC глобальные провайдеры могут накапливать устаревшее состояние после серии hot reload.
  • Изменения в assets (картинки, переводы) не подхватываются hot reload — только hot restart.

Типичные ошибки

  • Сводить «hot reload и hot restart во Flutter» к синтаксису и не объяснять platform channel.
  • Игнорировать жизненный цикл, основной поток или момент освобождения ресурсов в сценарии flutter-4.
  • Выбирать API по привычке, не проверяя состояние, ошибки, доступность и платформенные ограничения.

Что проверяет интервьюер

  • Формулирует точную модель для «hot reload и hot restart во Flutter» и подтверждает ее корректным примером.
  • Умеет связать ответ с widget tree, тестированием и отладкой на устройстве.
  • Называет ограничения подхода flutter-4, включая производительность, память и сопровождение.

Как вы знаете этот вопрос?

Проверить себя по теме Flutter →

Источники

  • https://docs.flutter.dev/tools/hot-reload
←Предыдущий вопросПредставьте, экран на Flutter тормозит, теряет состояние или ведёт себя по-разному на разных платформах. Как вы будете искать причину?Следующий вопрос→Как выполнять HTTP-запросы во Flutter?

Связанные темы

Flutterframework-api-designMobile-Engineering

Частые вопросы на собеседовании

  • Как работает управление состоянием (state management) во Flutter? Назовите распространённые решения.
  • Как работает дерево виджетов (widget tree) во Flutter (widget tree, element tree, render tree)?
  • Каковы лучшие практики оптимизации производительности Flutter?
  • В чём разница между StatelessWidget и StatefulWidget?