Курс Flutter: разработка приложений с нуля
Бесплатный интерактивный курс Flutter для начинающих. Пишите настоящие приложения на Dart и запускайте их на экране телефона рядом с редактором, с Hot reload, подсказками ИИ и сертификатами.
1,000+ codders записались
219 уроков219 задачи297 вопросов квиза
- Для начинающих
Помощь ИИ при написании кода
Практические интерактивные уроки
Аудио-озвучка к каждому уроку
Тесты для проверки знаний
Бесплатный сертификат о прохождении
Программа
Раздел 1
Ваше первое приложение
Начать разделНачатьРазвернутьСвернутьВаши первые приложения на Flutter: что такое Flutter, дерево виджетов, текст и его стиль, цветные блоки, внутренние отступы, строки и столбцы, значки и изображения, а также Dart, который понадобится по ходу обучения. В завершение — приложение-визитка.Привет, Flutter
6 уроков68Оформление текста
4 уроков45Dart: компиляция Just-in-Time
4 уроков45Блоки
4 уроков44Строки и столбцы
6 уроков68Иконки и изображения
5 уроков55Проект: визитная карточка
Проект3 уроков33Раздел 2
Добавляем интерактивность
Начать разделНачатьРазвернутьСвернутьПриложения, которые реагируют на действия: кнопки, функции и Console, StatefulWidget и setState, const и final, условия с if и булевы значения, текстовые поля, переключатели, флажки и ползунки, а также Dart, лежащий в их основе. В завершение — приложение для расчёта чаевых.Кнопки
5 уроков57Функции
3 уроков35Виджеты с состоянием
6 уроков610const и final
2 уроков24Условия
5 уроков58Текстовые поля
5 уроков57Переключатели и ползунки
3 уроков34Проект: калькулятор чаевых
Проект5 уроков56Раздел 3
Списки и экраны
Начать разделНачатьРазвернутьСвернутьПриложения с несколькими экранами: прокручиваемые списки и ListTile, карточки и сетки, собственные классы Dart для данных, переходы между экранами и передача данных, вкладки, боковое меню и удаление свайпом. В завершение — приложение с книгой рецептов.Прокручиваемые списки
5 уроков58Списки из данных
3 уроков34Карточки и сетки
3 уроков33Ваши собственные классы
6 уроков611Больше одного экрана
5 уроков58Вкладки, боковые панели и свайпы
5 уроков58Проект: Книга рецептов
Проект6 уроков67Раздел 4
Адаптивная компоновка
Начать разделНачатьРазвернутьСвернутьЭкраны, подходящие для любого телефона: распределение места в строке с помощью Expanded, Flexible и Spacer, разбор и исправление ошибки переполнения, Wrap, Stack и Positioned, SafeArea, максимальная ширина, размеры экранов и точки перехода, перечисления и switch, темы приложения и тёмный режим. В завершение — экран музыкального плеера.Совместное размещение в строке
4 уроков45Ошибка переполнения
5 уроков56Компоновка виджетов в стопку
4 уроков45Размеры и брейкпоинты
4 уроков44Перечисления и switch
3 уроков33Темы и тёмный режим
5 уроков56Проект: музыкальный плеер
Проект5 уроков55Раздел 5
Управление состоянием
Начать разделНачатьРазвернутьСвернутьОбмен данными между виджетами и экранами: подъём состояния вверх с помощью значений и колбэков, основы Dart для классов моделей, Provider с ChangeNotifier, Riverpod с ConsumerWidget, StateProvider и Notifier, а также выбор подходящего решения. В завершение — корзина покупок, общая для двух экранов.Поднятие состояния
4 уроков48Dart для моделей
4 уроков48Provider
7 уроков714Riverpod
6 уроков612Проект: корзина покупок
Проект6 уроков68Раздел 6
Данные и сеть
Начать разделНачатьРазвернутьСвернутьПриложения, которые ждут данные: futures, async и await, индикаторы загрузки с FutureBuilder, обработка ошибок с try и catch, преобразование JSON с сервера в классы Dart, обновление свайпом вниз, даты и цены с intl. В завершение — приложение о погоде.Future (асинхронные результаты)
4 уроков46Экраны загрузки
5 уроков58Когда вызовы завершаются ошибкой
5 уроков56JSON
5 уроков59Даты и цены
3 уроков33Проект: приложение «Погода»
Проект5 уроков56Раздел 7
Проекты
Начать разделНачатьРазвернутьСвернутьЧетыре полноценных приложения, которые вы создадите шаг за шагом, применяя всё изученное: список задач, викторина, магазин с корзиной и трекер привычек с сериями достижений и тёмным режимом. Каждое приложение получится отполированным и готовым к показу.Проект: список дел
Проект9 уроков910Проект: викторина
Проект9 уроков99Проект: магазин
Проект9 уроков99Проект: Трекер привычек
Проект9 уроков99
Учитесь на практике
Пишите реальный код, работайте с базами данных, создавайте сайты и осваивайте ИИ-промпты. Наши интерактивные уроки охватывают все навыки, необходимые современным разработчикам.
Создайте свою серию
Будьте последовательны и наблюдайте за своим прогрессом! Отслеживайте ежедневную привычку программирования, защищайте свою серию с помощью дней заморозки и получайте награды за каждый день.
12 дней подряд
Возвращайтесь завтра, чтобы сохранить серию!
January 2026
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
21
22
23
24
25
26
27
28
29
30
Всё или ничего
День 5 из 7
Заморозка серии
2 left
Вы не одиноки
Соревнуйтесь в глобальных рейтингах, приглашайте друзей, чтобы получать награды, и празднуйте успехи друг друга. Программировать веселее с друзьями!
Учитесь как угодно
Читайте, слушайте, проверяйте себя, спрашивайте у ИИ или ищите то, что уже изучили. Каждый урок подстраивается под вас.
Переменная - это именованный контейнер, который хранит значение для последующего использования.
В Python вы создаёте её, написав имя, знак равенства и значение, которое нужно сохранить.
Значение может меняться. Переприсваивание просто направляет имя на новое значение.
Ваш сертификат
Получайте сертификаты за каждый завершенный курс. Добавьте их в свой профиль LinkedIn и резюме, чтобы продемонстрировать работодателям свои навыки программирования.
Почему стоит учить Flutter с Coddy
- Код и приложение стоят рядом. Нажмите «Запустить»: приложение собирается на серверах Coddy и открывается на экране телефона рядом с редактором, его запускает веб-движок Flutter. Hot reload показывает изменение и сохраняет состояние приложения, а Консоль выводит результат
print()и ошибки. Нажмите «Проверить», и урок оценивается по тому, что приложение показывает на экране. - Для старта не нужно знать ни Flutter, ни Dart. Первый раздел строит дерево виджетов из
Text, цветных блоков, отступов,RowиColumn, иконок и картинок и заканчивается приложением-визиткой. Во втором приложения начинают отвечать: кнопки,StatefulWidgetиsetState,constиfinal, текстовые поля, переключатели и слайдеры, а в конце калькулятор чаевых. - Приложения с несколькими экранами: прокручиваемые списки, карточки и сетки, свои классы на Dart, переходы между экранами, вкладки, боковое меню и удаление свайпом. Затем вёрстка, которая помещается на любой телефон:
Expanded,FlexibleиSpacer, ошибка overflow и как её исправить,Stack,SafeArea, брейкпоинты, темы и тёмный режим. - Состояние и данные так, как с ними работают настоящие приложения: подъём состояния,
ProviderсChangeNotifier, Riverpod сConsumerWidgetиNotifier, и когда что выбирать. Потом futures,asyncиawait,FutureBuilder,tryиcatch, и JSON с сервера, превращённый в классы Dart, а в конце приложение погоды.
Частые вопросы об обучении Flutter
Нужно ли знать Dart, чтобы учить Flutter?
if, классам, async и await, каждому тогда, когда он впервые нужен приложению. Опыт программирования не нужен.