Полезные материалы для тех, кто хочет освоить Flutter
Flutter-разработчик — это специалист, который создаёт кросс-платформенные мобильные приложения. Если, например, Android-разработчик пишет только для пользователей Android, то Flutter-разработчик — для всех сразу.
Чтобы стать продвинутым Flutter-разработчиком, нужно уметь проектировать мобильное приложение, понимать, как подготовить его к началу работы, знать, как общаться с сервером, работать с базами данных. И подтянуть все эти скилы можно самостоятельно.
С чего начать
Прежде всего, Flutter-разработчик должен уметь программировать. Если вы это уже умеете, погружение следует начать с хендбука по Flutter-разработке от Яндекса. Это подробное руководство, которое формирует представление об устройстве фреймворка, его компонентах и языке Dart.
После знакомства с хендбуком можно переходить к плейлисту Школы мобильной разработки Яндекса (ШМР) — серии видео на YouTube, посвящённой обучению разработке на Flutter. Тут можно найти полные записи лекций по Flutter-треку из последнего потока ШМР 2023 года. Сама школа — это ежегодный трёхмесячный курс для начинающих и имеющих небольшой опыт разработчиков.
Официальные ресурсы
Любое знакомство с новой для себя технологией стоит сопровождать чтением документации: чаще всего там есть ответы на многие вопросы, возникающие в процессе изучения. Поэтому, если вы можете читать техническую литературу на английском, обязательно посмотрите на официальные ресурсы Flutter:
-
Документация Flutter — материалы по всем аспектам фреймворка, от основ до продвинутых тем.
-
Руководства по Dart — рекомендации по языку, на котором основан Flutter. Включают базовые и продвинутые руководства.
-
Канал на YouTube — ресурс, где команда разработчиков Flutter публикует обучающие видео, новости и обновления.
Основы Dart
Flutter-разработчик всегда будет использовать Dart как основной инструмент. Поэтому важно углубиться и в изучение этого языка программирования.
В целом Dart несложный — если у вас есть опыт работы с Си-подобным синтаксисом, например с Java или JavaScript, то вы сможете быстро освоить язык. Но при этом в нём немало нюансов, которые охватываются Language Tour Dart — большим руководством по Dart.
Асинхронное программирование (когда результат выполнения функции доступен не сразу, а через некоторое время) — важная часть разработки на Flutter. Разобраться поможет видеоурок из ШМР 2024 года про асинхронность, объясняющий принципы асинхронного программирования на Dart.
Основы Flutter
Изучить фреймворк до конца, конечно, не получится, но можно постараться охватить главные детали.
Начните с Flutter in Focus — серии коротких видеороликов от команды Flutter, в которых объясняются основные концепции и функции фреймворка.
Также важно знать, как работают констрейнты в Flutter, — официальная документация объяснит, как управлять расположением виджетов. Есть перевод статьи на русский язык.
Не стоит забывать о механизме рендеринга. В статье объясняется, как он работает в Flutter — от виджетов до вызовов движка.
Продвинутые темы
Чтобы в полном объёме выполнять задачи разработки мобильного приложения на Flutter, нужно многое: подготовить приложение к активной разработке, знать принципы проектирования, уметь настроить общение с сервером и базой данных. Настоящим профи поможет стать (вдобавок к названному) понимание разработки на нативной платформе (Android, iOS, Web) и того, как доставлять приложение пользователям, — CI/CD (Continuous Integration / Continuous Deployment).
Вот что можно изучить для этого:
-
Плейлист ШМР 2024 года — серия углублённых лекций о Flutter.
-
Асинхронность под капотом — статья на Хабре о том, как работает асинхронность в Flutter и Dart на глубоком уровне.
-
Как и какие потоки работают в Flutter — официальная документация, объясняющая, как работают потоки в Flutter и как это влияет на производительность приложений.
-
Введение в Dart VM — статья о внутреннем устройстве Dart и его виртуальной машины. Полезно для глубокого понимания работы языка.
-
Рефлексия в Dart — подробный рассказ про библиотеку dart:mirrors и кодогенерацию.
-
Flutter в GitHub Actions — руководство по настройке CI/CD для проектов на Flutter с использованием GitHub Actions.
Курсы
Для тех, кому удобно учиться на одной платформе, подойдут курсы о работе с фреймворком. Например, Lazyload Flutter — канал на YouTube с курсом по написанию Flutter-приложения. Либо можно выбрать один из онлайн-курсов, перечисленных на официальном ресурсе Flutter.
Полезные сборники
Один из таких — репозиторий flutter_info на GitHub, большая коллекция разных материалов по Flutter со ссылками, включая статьи, видео и инструменты. Много видеоуроков и курсов по Flutter — от основ до продвинутых техник — можно найти на Resocoder, а в коллекции статей Flutteris освещаются различные аспекты разработки.
Сообщества
Много пользы Flutter-разработчику может дать профессиональное комьюнити. Можно, например, подписаться на телеграм-канал FlutterBro с полезными материалами о фреймворке от руководителя одной из Flutter-команд в Яндекс Про. Или на другие каналы из телеграм-папки. Также можно вступить в тематические чаты из ещё одной телеграм-папки и мониторить канал с вакансиями.
Собранные ресурсы помогут вам подтянуть имеющиеся скилы и изучить много нового. Но нужно помнить, что Flutter — относительно молодой и стремительно развивающийся фреймворк. Поэтому Flutter-разработчику важно непрерывно учиться, чтобы успевать за языком и фреймворком.