
Kurs Flutter
Opanuj Fluttera od podstaw i twórz gotowe do produkcji aplikacje na systemy iOS, Android, web i desktop. Ten kurs obejmuje wszystko, od podstaw Darta i zarządzania stanem po animacje, integrację z Firebase i automatyczne wdrażanie. Jeśli poważnie myślisz o zostaniu profesjonalnym programistą Fluttera, to jest miejsce, od którego powinieneś zacząć.
Czego się nauczysz:
Zaczniesz od składni Darta i systemu widgetów we Flutterze, a następnie przejdziesz do układów, nawigacji i zarządzania stanem przy użyciu Providera, Riverpoda i BLoC. Stamtąd połączysz swoje aplikacje z interfejsami REST API, obsłużysz lokalne przechowywanie danych i zintegrujesz Firebase do uwierzytelniania i danych w czasie rzeczywistym. Stworzysz niestandardowe animacje, zoptymalizujesz wydajność aplikacji i napiszesz testy jednostkowe, widgetów i integracyjne. Na koniec skonfigurujesz potoki CI/CD i opublikujesz swoje aplikacje w App Store i Google Play. Każdy temat jest poparty praktycznym kodem, który możesz od razu wykorzystać w rzeczywistych projektach.
Jak uczysz się w praktyce Kurs Flutter
Jak ćwiczysz Kurs Flutter
Dla firm, które chcą szkolić swój zespół
W Dedika dla firm kurs zawiera ćwiczenia i przykłady dostosowane do Twojego biznesu i potrzeb Twojej firmy.
Treść kursu
8 Rozdziały • 38 LekcjeCzas trwania od 4 do 360 godzin (Ty decydujesz)
Rozdział 1UkryjUkryj szczegółyZobacz szczegółyFlutter i Dart – podstawy
Flutter i Dart – podstawy
Lekcja 1 • Dart obiektowy
Poznaj klasy, dziedziczenie, mixiny i interfejsy w Darcie. Przygotowuje studentów do zrozumienia hierarchii widgetów Fluttera.
Lekcja 2 • Konfiguracja środowiska Flutter
Zainstaluj Flutter SDK, skonfiguruj IDE i podłącz urządzenie lub emulator. Ustanawia łańcuch narzędzi, od którego zależą wszystkie kolejne rozdziały.
Lekcja 3 • Omówienie struktury projektu Flutter
Zbadaj anatomię projektu Flutter: foldery, pubspec.yaml i punkt wejścia. Łączy wiedzę o Darcie z rzeczywistą organizacją projektu.
Lekcja 4 • Podstawowe koncepcje języka Dart
Omów zmienne, typy, funkcje i sterowanie przepływem w Darcie. Zapewnia fundament językowy niezbędny do pisania dowolnego widgetu lub logiki Fluttera.
Rozdział 2UkryjUkryj szczegółyZobacz szczegółyWidgety i elementy składowe UI
Widgety i elementy składowe UI
Lekcja 1 • Podstawowe widgety Material i Cupertino
Przegląd niezbędnych wbudowanych widgetów: Text, Image, Icon, warianty przycisków i AppBar. Zapewnia praktyczny zestaw narzędzi do tworzenia rzeczywistych ekranów.
Lekcja 2 • Widgety stanowe i setState
Wprowadź stan mutowalny za pomocą StatefulWidget i mechanizmu setState. Umożliwia tworzenie dynamicznych, interaktywnych komponentów UI.
Lekcja 3 • Widgety formularzy i wprowadzania danych
Zaimplementuj pola tekstowe, pola wyboru, przyciski opcji i walidację formularzy. Łączy obsługę danych wejściowych użytkownika z koncepcjami widgetów stanowych.
Lekcja 4 • Widgety bezstanowe – szczegółowo
Twórz i komponuj podklasy StatelessWidget dla statycznego UI. Omawia metodę build, konstruktory const i wzorce ponownego użycia widgetów.
Lekcja 5 • Zrozumienie drzewa widgetów
Wyjaśnij, jak Flutter renderuje UI jako drzewo widgetów i jak działają relacje rodzic-dziecko. Stanowi podstawę wszystkich decyzji dotyczących układu i stylizacji.
Rozdział 3UkryjUkryj szczegółyZobacz szczegółyUkłady i projektowanie responsywne
Układy i projektowanie responsywne
Lekcja 1 • Układy responsywne i adaptacyjne
Zastosuj MediaQuery, LayoutBuilder i punkty graniczne, aby dostosować UI do rozmiaru ekranu. Zapewnia spójne UX na różnych kategoriach urządzeń.
Lekcja 2 • Układy Stack, Positioned i Overlay
Warstwuj widgety za pomocą Stack i Positioned dla nakładających się elementów UI. Umożliwia tworzenie odznak, pływających etykiet i niestandardowych nakładek.
Lekcja 3 • Układy Row, Column i Flex
Użyj Row, Column i Flex z wyrównaniem, odstępami i dziećmi Expanded lub Flexible. Stanowi szkielet większości układów ekranów Fluttera.
Lekcja 4 • Widgety przewijane i listy
Twórz przewijaną zawartość za pomocą ListView, GridView i CustomScrollView. Obejmuje wzorce leniwego ładowania dla wydajności przy dużych zbiorach danych.
Lekcja 5 • Ograniczenia Box i protokół układu
Wyjaśnij, jak Flutter przekazuje ograniczenia w dół i określa rozmiary w górę drzewa. Rozwiązuje najczęstsze problemy z układem, zanim staną się nawykiem.
Rozdział 4UkryjUkryj szczegółyZobacz szczegółyNawigacja i routing
Nawigacja i routing
Lekcja 1 • Navigator 2.0 i deklaratywny routing
Przyjmij API Router i listę Pages do nawigacji opartej na URL. Umożliwia tworzenie aplikacji Flutter kompatybilnych z przeglądarką i obsługujących głębokie linki.
Lekcja 2 • Używanie GoRouter do nawigacji
Skonfiguruj GoRouter dla deklaratywnego routingu opartego na URL z zabezpieczeniami i przekierowaniami. Upraszcza złożoność Navigator 2.0 w aplikacjach produkcyjnych.
Lekcja 3 • Dolna nawigacja i paski zakładek
Połącz BottomNavigationBar, TabBar i TabBarView dla aplikacji wielosekcyjnych. Integruje wzorce nawigacji z zarządzaniem widgetami stanowymi.
Lekcja 4 • Podstawy Navigator 1.0
Wypychaj i zdejmuj trasy imperatywnie za pomocą Navigator i MaterialPageRoute. Ustanawia model mentalny dla nawigacji stosowej.
Rozdział 5UkryjUkryj szczegółyZobacz szczegółyStrategie zarządzania stanem
Strategie zarządzania stanem
Lekcja 1 • InheritedWidget i Provider
Udostępniaj stan w dół drzewa widgetów za pomocą InheritedWidget, a następnie uprość go za pomocą Provider. Buduje intuicję dla wstrzykiwania zależności we Flutterze.
Lekcja 2 • Wzorzec BLoC z flutter_bloc
Oddziel UI od logiki biznesowej za pomocą zdarzeń, stanów i klas BLoC. Wymusza jednokierunkowy przepływ danych w dużych projektach zespołowych.
Lekcja 3 • Stan lokalny z ValueNotifier i Hooks
Zarządzaj stanem lokalnym widgetu efektywnie za pomocą ValueNotifier i flutter_hooks. Redukuje kod szkieletowy dla prostego stanu reaktywnego bez pełnych rozwiązań.
Lekcja 4 • Ramy decyzyjne zarządzania stanem
Porównaj rozwiązania pod kątem złożoności, testowalności i wielkości zespołu. Wyposaża studentów w umiejętność uzasadniania wyborów architektonicznych w rzeczywistych projektach.
Lekcja 5 • Riverpod dla nowoczesnego zarządzania stanem
Deklaruj providery poza drzewem widgetów za pomocą Riverpod dla testowalnego, bezpiecznego kompilacyjnie stanu. Rozwiązuje ograniczenia związane z zależnością od kontekstu w Provider.
Rozdział 6UkryjUkryj szczegółyZobacz szczegółySieci, API i trwałość danych
Sieci, API i trwałość danych
Lekcja 1 • Parsowanie JSON i modele danych
Deserializuj JSON do klas modeli Darta ręcznie i za pomocą generowania kodu. Zapewnia bezpieczne typowo przetwarzanie danych w całej aplikacji.
Lekcja 2 • Wzorzec repozytorium i warstwa danych
Abstrahuj źródła danych za interfejsami repozytorium dla testowalności i elastyczności. Łączy sieci i trwałość w czystą warstwę architektoniczną.
Lekcja 3 • Żądania HTTP z Dio i http
Wykonuj żądania GET, POST, PUT i DELETE za pomocą pakietów http i Dio. Obejmuje interceptory, nagłówki i obsługę odpowiedzi błędów.
Lekcja 4 • Asynchroniczny Dart: Futures i Streams
Opanuj async/await, łączenie Future i subskrypcje Stream w Darcie. Zapewnia asynchroniczny fundament dla wszystkich prac sieciowych i trwałości.
Lekcja 5 • Lokalne przechowywanie i bazy danych
Utrwalaj dane za pomocą SharedPreferences, Hive i SQLite przez sqflite. Obejmuje przypadki użycia od prostego przechowywania klucz-wartość po zapytania relacyjne.
Rozdział 7UkryjUkryj szczegółyZobacz szczegółyAnimacje i własne rysowanie
Animacje i własne rysowanie
Lekcja 1 • Animacje Hero i przejść stron
Zaimplementuj współdzielone elementy Hero i niestandardowe animacje przejść stron. Tworzy ciągłość wizualną między ekranami podczas nawigacji.
Lekcja 2 • Animacje jawne z AnimationController
Kontroluj animacje precyzyjnie za pomocą AnimationController, Tween i AnimatedBuilder. Umożliwia zapętlone, odwracane i sekwencyjne animacje.
Lekcja 3 • Animacje niejawne
Używaj AnimatedContainer, AnimatedOpacity i TweenAnimationBuilder dla prostych przejść. Osiąga dopracowane zmiany UI przy minimalnym kodzie.
Lekcja 4 • Własne rysowanie za pomocą Canvas
Rysuj kształty, ścieżki i gradienty za pomocą API CustomPainter i Canvas. Odblokowuje w pełni niestandardowe elementy UI wykraczające poza standardowe możliwości widgetów.
Lekcja 5 • Integracje Rive i Lottie
Osadź animacje wektorowe z plików Rive i Lottie w aplikacjach Flutter. Umożliwia animacje sterowane przez projektanta bez ręcznej implementacji kodu.
Rozdział 8UkryjUkryj szczegółyZobacz szczegółyTestowanie, wdrażanie i CI/CD
Testowanie, wdrażanie i CI/CD
Lekcja 1 • Testy integracyjne i end-to-end
Uruchom pełne przepływy aplikacji na rzeczywistych urządzeniach lub emulatorach za pomocą pakietu integration_test. Weryfikuje kompletne podróże użytkownika przed wydaniem.
Lekcja 2 • Potoki CI/CD i wdrażanie do sklepów
Automatyzuj budowanie, testy i wydania za pomocą narzędzi CI i Fastlane. Zmniejsza ręczny wysiłek związany z wydaniem i wymusza bramki jakości przy każdym commitcie.
Lekcja 3 • Testowanie jednostkowe we Flutterze
Testuj logikę Darta i klasy zarządzania stanem w izolacji za pomocą pakietu test. Weryfikuje logikę biznesową niezależnie od warstwy UI.
Lekcja 4 • Testowanie widgetów
Renderuj widgety w środowisku testowym i symuluj interakcje użytkownika za pomocą WidgetTester. Wykrywa regresje UI bez uruchamiania na rzeczywistym urządzeniu.
Lekcja 5 • Konfiguracja budowania i flavor
Skonfiguruj flavor budowania dla środowisk deweloperskiego, stagingowego i produkcyjnego. Zapobiega przedostawaniu się błędów specyficznych dla środowiska do użytkowników końcowych.
Twój ważny certyfikat ukończenia
Ten kurs jest dla Ciebie:
Deweloper stron internetowych: chce rozszerzyć działalność na aplikacje mobilne bez konieczności uczenia się dwóch natywnych stosów technologicznych.
Osoba zmieniająca karierę: ma doświadczenie z bootcampu programistycznego i celuje w stanowisko programisty mobilnego.
Deweloper Android lub iOS: szuka zunifikowanego, międzyplatformowego przepływu pracy, aby zwiększyć produktywność.
Indie hacker: potrzebuje samodzielnie wypuścić aplikację konsumencką bez zatrudniania zespołu mobilnego.
Student informatyki: chce zdobyć praktyczne, przydatne na rynku pracy umiejętności wykraczające poza program studiów.
Inżynier backendu: gotowy do przejęcia pełnej odpowiedzialności za produkt poprzez dodanie dopracowanego frontendu mobilnego.
Co mówią nasi uczniowie
Wasze lekcje są doskonałe. Kupiłem pakiet roczny i w końcu mam możliwość śledzenia różnych tematów, które mnie interesują, bez konieczności zmiany platformy... dziękuję za wszystko, co robicie, już polecałem was innym osobom...

Podoba mi się, jak lekcje są konkretne i jak mogę przełączać rozdziały i pomijać treści, których nie potrzebuję.

Podoba mi się treść i sposób prezentacji oraz transkrypcja filmów, co przyspiesza proces!

Platforma jest szybka, prosta w użyciu. Różnorodność treści i filmy uzupełniające bardzo pomagają w nauce.

Najważniejsze szkolenia
FAQ
Kim jest Dedika?
Czy certyfikat jest ważny w Polska?
Czy kursy są darmowe?
Jaki jest wymiar godzinowy kursu?
Jak wyglądają kursy?
Jak działają kursy?
Jaki jest czas trwania kursów?
Jaki jest koszt lub cena kursów?
Czym jest kurs EAD lub kurs online i jak działa?
Kurs PDF




















