Курси Flutter developer

Фільтр
Курс
Рекомендуємо
Формат
Online
Початок навчання
01.05.2024
Тривалість
30 занять
Рівень
Для початківців, Для досвідчених
Мова навчання
Ukrainian
Вартість
уточнюйте
Вечірні заняттяВидається диплом/сертифікатСупровід ментораРеальний проект у портфоліо
Robot Dreams
  • Dart
  • Flutter
  • Mobile Development
Подробиці

Опануйте кросплатформенну фулстек-розробку та навчіться створювати кастомізовані функціональні застосунки для Android, iOS i web.

Програма курсу

Знайомство з Dart та Flutter

  • Зрозумієте, як влаштований курс, та зможете планувати свій навчальний процес
  • Дізнаєтеся про перспективи розвитку технології та навіщо її вивчати
  • Зможете почати експериментувати з онлайн-редактором DartPad

Основи мобільної розробки

  • Зрозумієте відмінність між мовою та фреймворком
  • Дізнаєтеся, на що звертати увагу під час розробки мобільних застосунків
  • Отримаєте базове уявлення про те, як працювати з кодом та чому

Git та робота з GitHub

  • Зрозумієте призначення системи контролю версій
  • Вивчите основні потрібні команди для роботи з Git
  • Знайдете та встановите все необхідне ПЗ для роботи з Flutter
  • Налаштуєте репозиторій та ключі доступу
  • Зробите перший коміт

Основи Dart. Part 1

  • Зрозумієте основні принципи роботи мови програмування Dart
  • Навчитеся оперувати даними різних типів
  • Напишете прості функції, реалізуєте умовні оператори та оператори перемикання
  • Дізнаєтеся про структуру Nullable-типів даних та її важливість

Основи Dart. Part 2

  • Вивчите основні модифікатори доступу та зрозумієте їхню відмінність від інших мов
  • Навчитеся працювати з класами, інтерфейсами, наслідуванням
  • Дізнаєтеся, коли та як використовувати часткове наслідування
  • Навчитеся працювати з колекціями
  • Дізнаєтеся патерни та рекорди й зрозумієте, коли їх використовувати

Основи Flutter. Part 3

  • Зрозумієте основні особливості та переваги роботи з Flutter-проєктами, а також принципи кросплатформної розробки, швидкість розробки та можливості використання готових віджетів і пакетів
  • Вивчите основні компоненти та концепції архітектури Flutter, як-от віджети, стан застосунку, маршрутизація та взаємодія зі сторонніми сервісами
  • Зрозумієте, як додавати новий функціонал до своїх застосунків за допомогою готових рішень та використовувати зовнішні сервіси й бібліотеки
  • Зможете налаштувати своє робоче середовище, створити новий проєкт та запустити його на емуляторі або фізичному пристрої

Рендеринг у Flutter + Q&A-сесія з лектором

  • Дізнаєтеся про різні етапи рендерингу та механізми, що забезпечують швидкість і плавність відтворення
  • Зрозумієте, що таке віджети в контексті Flutter та яке значення вони мають для побудови інтерфейсу користувача, ознайомитеся з різними типами віджетів та їхньою функціональністю
  • Зрозумієте механізми, що забезпечують оновлення та перерендеринг віджетів у Flutter
  • Дізнаєтеся, що таке hot reload та hot restart у Flutter і зрозумієте їхній вплив на розробку та налагодження застосунків

Віджети для Flutter. Part 1

  • Дізнаєтеся, що таке віджети в контексті Flutter та якими бувають їхні типи, зрозумієте нюанси їх використання для побудови інтерфейсу користувача
  • Зрозумієте відмінність між StatefulWidget та StatelessWidget та дізнаєтеся, коли краще використовувати кожен з них
  • Зрозумієте принцип роботи InheritedWidget та його роль у передачі даних
  • Навчитеся використовувати необхідні віджети-контейнери для організації та розміщення елементів у UI

Віджети для Flutter. Part 2

  • Навчитеся створювати повноцінні екрани та їхні компоненти
  • Зможете використовувати компоненти Scaffold для побудови UI
  • Дізналися про відмінності між Material та Cupertino
  • Дізналися, в яких ситуаціях можуть знадобитись адаптивні віджети

Віджети для Flutter. Part 3

  • Навчитеся використовувати різні віджети для реалізації необхідного UI, а також різні види тестових та графічних віджетів
  • Дізнаєтеся, як будувати списки та сітки за допомогою ListView та GridView

Інші базові віджети для Flutter + Q&A-сесія з лектором

Базове керування станом застосунків Flutter

  • Зрозумієте, чому ефективне керування станом є ключовим елементом успішної розробки Flutter-застосунків і як воно впливає на їхню продуктивність та реактивність
  • Зрозумієте принципи та навчитеся використовувати метод setState для зміни стану компонента StatefulWidget та оновлення інтерфейсу на основі нового стану

Рефакторинг та структура проєкту

  • Зрозумієте потребу рефакторингу та правильної організації коду в проєкті
  • Зможете налаштовувати базову архітектуру для правильної взаємодії компонентів у Flutter-застосунку
  • Навчитеся обирати зручний для себе підхід в організації проєкту залежно від масштабу або підлаштовуватися під стиль команди
  • Зрозумієте принципи розробки та навчитеся використовувати їх на практиці

Лейаути у Flutter

  • Дізнаєтеся про наявні готові віджети, які допомогають будувати основу Layout, як-от Container, Padding, Align та інші
  • Навчитеся використовувати віджети Row та Column, Expanded та Flexible, Stack та Wrap

Побудова гнучкого та адаптивного UI

  • Дізнаєтеся про віджет SingleChildScrollView та віджети Sliver, як-от SliverAppBar, SliverList, SliverGrid та інші, для створення розширених та складних ефектів прокрутки
  • Навчитеся використовувати віджет Table для створення таблиць
  • Навчитеся використовувати LayoutBuilder для створення динамічних та адаптивних Layout, а також MediaQuery для створення адаптивної розмітки в застосунку
  • Зрозумієте, як створювати Layout, що пристосовуються до різних розмірів екрана

Персоналізація застосунків

  • Зрозумієте важливість персоналізації застосунків
  • Дізнаєтеся, як використовувати Theme та Colors для зміни кольорів, стилів та інших атрибутів віджетів у застосунку
  • Навчитеся створювати теми та налаштовувати їх для зміни загального вигляду застосунку, змінювати стилі тексту, використовувати шрифти з бібліотеки Google Fonts, додавати кастомні шрифти
  • Навчитеся створювати власні форми та фігури за допомогою CustomPainter, використовувати Flutter SVG для роботи з векторною графікою

Анімація у застосунках

  • Дізнаєтеся, як створювати різні анімації зміни розмірів, прозорості та інших властивостей віджетів
  • Навчитеся використовувати різні типи переходів
  • Дізнаєтеся про різні типи анімаційних кривих та ефектів, як-от пульсація, перетинання, масштабування
  • Навчитеся втілювати анімаційні ефекти у життя та робити застосунок живим і привабливим

Q&A-сесія з лектором

Покращене керування станом застосунків Flutter. Part 1

  • Ознайомитеся з пакетом Provider для керування станом застосунку
  • Дізнаєтеся, як створювати оптимізовані моделі стану та використовувати провайдери для постачання та слухачів для споживання
  • Ознайомитеся з пакетом Riverpod та дізнаєтеся, як його використовувати для створення залежностей та обміну станом між віджетами

Покращене керування станом застосунків Flutter. Part 2

  • Ознайомитеся з пакетом BLoC (Business Logic Component)
  • Навчитеся обирати оптимальний підхід для керування станом застосунків залежно від потреб та вимог

Багатопотоковість та паралелізм

  • Зрозумієте основні поняття та принципи роботи з потоками, а також особливості асинхронного програмування
  • Дізнаєтеся, як використовувати ключове слово async, об’єкти Future та FutureBuilder для оновлення інтерфейсу на основі стану Future
  • Дізнаєтеся, як працювати з потоками (Stream) та використовувати StreamBuilder
  • Навчитеся використовувати бібліотеку RxDart та набудете базових знань щодо застосування операторів
  • Дізнаєтеся про Isolate та функцію Compute

Навігація інтерфейсом застосунку

  • Навчитеся використовувати стандартні методи навігації, як-от Navigator.push і Navigator.pop
  • Дізнаєтеся про способи передачі даних між екранами під час навігації та зрозумієте принципи роботи стека навігації
  • Дізнаєтеся про Navigator 2.0, який надає більше гнучкості в навігації, та навчитеся працювати з URL-адресами для навігації
  • Ознайомитеся з go_router
  • Навчитеся будувати зручний та логічний інтерфейс навігації

Q&A-сесія з лектором

Робота з мережею та передачею даних

  • Навчитеся працювати з найпростішим пакетом HTTP для взаємодії з API
  • Ознайомитеся з принципами взаємодії з RESTful API та навчитеся виконувати (GET, POST, PUT, DELETE) запити до API
  • Зрозумієте принципи побудови JSON, які повертаються з API
  • Навчитеся створювати моделі даних, які відтворюють структуру й типи даних, отриманих з API
  • Зрозумієте асинхронність у Dart і відповідну роботу з API
  • Навчитеся перехоплювати та обробляти помилки, які можуть виникнути під час взаємодії з API
  • Вмієте виводити повідомлення про помилки користувачам

Бази даних - Offline. Part 1

  • Дізнаєтеся про основні типи баз даних
  • Ознайомитеся з ORM-фреймворками для зручної та швидкої роботи з базою даних у Flutter
  • Навчитеся створювати таблиці, додавати, змінювати, видаляти та запитувати дані з бази даних SQL
  • Попрацюєте з пакетами sqflite та Realm
  • Навчитеся використовувати Hive для роботи з даними

Бази даних - Offline. Firebase. Part 2

  • Підключите Firebase Realtime Database до застосунку Flutter і навчитеся використовувати його для роботи з даними в реальному часі
  • Дізнаєтеся, як підключити Firebase Cloud Firestore
  • Набудете теоретичних знань роботи з пакетом Hive
  • Ознайомитеся з інструментами для дослідження баз даних з мобільного пристрою

Підключення додаткових можливостей до застосунків. Part 1

  • Навчитеся підключати та використовувати пакети permission_handler, path_provider, file_picker, image_picker, camera
  • Налаштуєте мінімальний функціонал для фотографування, запису відео та роботи з іншими функціями камери

Підключення додаткових можливостей до застосунків. Part 2

  • Навчитеся використовувати пакети share_plus, location, flutter_local_notifications, audioplayers, chewie
  • Налаштуєте та відправите сповіщення з різними параметрами, як-от заголовок, текст, значок та інші
  • Навчитеся відтворювати звуки та музику в застосунку

Flutter Web

  • Навчитеся налаштувати Flutter SDK для розробки вебзастосунків
  • Дізнаєтеся, як використовувати Firebase Hosting для розгортання та публікації Flutter-вебзастосунків в інтернеті
  • Навчитеся працювати з Responsive та Adaptive дизайном у Flutter для вебу

Захист курсових проєктів

  • Набудете практичних навичок роботи з Flutter
  • Навчитеся презентувати власну роботу

Особливості курсу

  • Dart & Flutter
  • Мобільна розробка
  • Пет-проєкт
  • Кар'єра

Викладачі курсу

Вадим Пінчук - Senior Software Developer у Meta

Більше інформації

Читайте нас в Telegram, щоб не пропустити анонси нових курсів.