Домашнее задание Flutter. Навигация. Диалоги. Всплывающие окна Цель: Цель домашнего задания - получить навык работы с навигацией и popups. Кроме того, студент получит навык передачи данных в отдельный экран и обработки ответа, получаемого из этого экрана. Потребуется: реализовать навигацию в экран описания коктейля из списка Избранное (Favourite Cocktails). - Склонировать соотвествующий github репозиторий с заготовкой проекта для этого урока - Открыть класс экрана FavouriteCocktailsScreen - Внести изменения в код экрана, выделив соотвествующие обработчики событий на нажатие элемента из списка избранных коктейлей - В обработчике события на переход к экрану описания коктейля выполнить асинхронное получение модели коктейля - В обработчике события на переход к экрану описания коктейля после получения модели коктейля выполнить навигацию к экрану описания коктейля (CocktailDetailsScreen) с передачей полученной модели - Убедиться, что CocktailDetailsScreen отображает корректно полученную модель На усмотрение студента: - Можно использовать любые виджеты из Flutter SDK, но не стоит использовать сторонние пакеты - Можно выполнить любую декомпозицию метода build на экране списка выбранных коктейлей (FavouriteCocktailsScreen) для упрощения верстки и улучшения читаемости кода (рефакторинг) - Можно выполнить любую декомпозицию экрана CocktailDetailsScreen для внесения изменений, требуемых для навигации (обращение к API, рефакторинг) Форма сдачи: - ДЗ Сдается в виде ссылки на github репозиторий с проектом Куда сдать ДЗ: - Отправляется напрямую в ЛК Куда и кому задавать вопросы, если они возникнут - По всем вопросам можно обращаться в Slack к студентам, преподавателям в канал группы Критерии оценки: Критерии оценки: - Навигация из списка избранного в экран с полным описанием коктейля работает корректно (с передачей полной информацией по коктейлю) - 4 балла - Нет ошибок (errors & warnings & infos) от dart analyzer - 3 балла - Код экрана FavouriteCocktailsScreen декомпозирован с использованием отдельных методов для обращения к API и выделением методов для обработки событий - 3 балла Статус "Принято" ставится от 4 баллов.