Bądźmy w kontakcie
 Czas trwania 14 godzin

Plan Szkolenia

1. Wprowadzenie do .NET MAUI i rozwoju międzyplatformowego

  • Architektura .NET MAUI i cykl życia aplikacji
  • Struktura projektu wieloplatformowego i architektura pojedynczego projektu
  • Zrozumienie obsłudze, kontrolek, układów i abstrakcji platformowych
  • Kod specyficzny dla platformy i kompilacja warunkowa
  • Zarządzanie zależnościami i pakiety NuGet
  • Praca z Visual Studio i CLI .NET
  • Budowanie i uruchamianie aplikacji na Androidzie, iOS, Windows i macOS
  • Ćwiczenie: Tworzenie i konfiguracja międzyplatformowej aplikacji .NET MAUI

2. Zaawansowane techniki i wzorce MVVM

  • Przegląd MVVM i rozdziału obowiązków
  • Zaawansowane techniki wiązania danych
  • Skompilowane wiązania i wydajność wiązania
  • INotifyPropertyChanged i kolekcje obserwowalne
  • Komendy, komendy asynchroniczne i parametry komend
  • CommunityToolkit.Mvvm i generatory źródeł
  • ViewModels, usługi i zarządzanie stanem
  • Nawigacja i ViewModely świadome nawigacji
  • Obsługa walidacji i stanu aplikacji
  • Ćwiczenie: Budowanie wielostronicowej aplikacji MVVM z walidacją i operacjami asynchronicznymi

3. Wstrzykiwanie zależności i architektura aplikacji

  • Wbudowane wstrzykiwanie zależności w .NET
  • Czas życia usług: chwilowy, zakresowy i pojedynczy
  • Rejestrowanie usług specyficznych dla platformy i współdzielonych
  • Iniekcja konstruktora i kompozycja usług
  • Odwrócenie zależności i luźne sprzężenie
  • Wzorce Repository i Service
  • Zarządzanie zależnościami w całej aplikacji
  • Konfiguracja i usługi zależne od środowiska
  • Ćwiczenie: Refaktoryzacja aplikacji przy użyciu wstrzykiwania zależności

4. Dogłębne przyjrzenie się dostosowywaniu i rozszerzaniu .NET MAUI

  • Zrozumienie obsłudze i architektury renderowania .NET MAUI
  • Własne obsługi i implementacje specyficzne dla platformy
  • Mapowanie kontrolek .NET MAUI na natywne kontrole platformy
  • Rozszerzanie istniejących kontrolek
  • Tworzenie własnych kontrolek
  • Zachowanie specyficzne dla platformy i API
  • Efekty, zachowania i ponownie używalne rozszerzenia UI
  • Kiedy używać obsług, zachowań, efektów lub własnych kontrolek
  • Ćwiczenie: Tworzenie i integracja dostosowanego kontrolera międzyplatformowego

5. Budowanie ponownie używalnych komponentów i bibliotek

  • Projektowanie ponownie używalnych komponentów UI
  • Tworzenie własnych kontrolek i ContentViews
  • Parametryzacja komponentów i wiązanie danych
  • Tworzenie ponownie używalnych zachowań i konwerterów
  • Organizacja współdzielonej funkcjonalności aplikacji
  • Tworzenie bibliotek klas .NET dla aplikacji MAUI
  • Pakowanie i dystrybucja ponownie używalnych komponentów
  • Podstawy pakietów NuGet
  • Ćwiczenie: Budowanie biblioteki ponownie używalnych komponentów

6. Zaawansowany UI/UX, układy i animacje

  • Zaawansowane układy i responsywny projekt UI
  • Adaptacyjne interfejsy dla telefonów, tabletów i desktopów
  • Dynamiczne zasoby i stylizacja
  • Słowniki zasobów i zarządzanie motywami
  • Motwy jasne i ciemne
  • Stany wizualne i UI sterowane stanem
  • Zaawansowane animacje i przejścia
  • Rozpoznawanie gestów
  • Nierządowy rysowanie i grafika
  • Rozważenia dotyczące dostępności
  • Ćwiczenie: Tworzenie responsywnego i animowanego interfejsu MAUI

7. Obsługa złożonych scenariuszy danych

  • Korzystanie z API REST w .NET MAUI
  • Klienci HTTP i asynchroniczny dostęp do danych
  • SerIALIZACJA i deserIALIZACJA JSON
  • Obsługa błędów i strategie ponawiania
  • Lojalizacja danych lokalnie
  • SQLite i bazy danych lokalnych
  • Wzorce Repository dla dostępu do danych
  • Projektowanie aplikacji offline-first
  • Synchronizacja między danymi lokalnymi a zdalnymi
  • Strategie rozwiązywania konfliktów
  • Cache'owanie i unieważniania cache
  • Ćwiczenie: Implementacja aplikacji zasilanej danymi z funkcją offline

8. Dostosowywanie wydajności i optymalizacja

  • Identyfikacja wąskich gardeł wydajności
  • Optymalizacja czasu uruchamiania
  • Zarządzanie pamięcią i zużycie zasobów
  • Ograniczenie niepotrzebnych aktualizacji UI
  • Optymalizacja wiązań i renderowania kolekcji
  • Sprawna załadowanie i cache'owanie obrazów
  • Programowanie asynchroniczne i unikanie blokowania wątku UI
  • Przetwarzanie w tle
  • Ograniczenie rozmiaru aplikacji
  • Zarządzanie wyciekami pamięci i czasem życia obiektów
  • Ćwiczenie: Profilowanie i optymalizacja celowo nieefektywnej aplikacji MAUI

9. Zaawansowane techniki debugowania i profilowania

  • Debugowanie aplikacji międzyplatformowych
  • Punkty kontrolne, obserwacje i obsługa wyjątków
  • Diagnostyka problemów z UI i cyklem życia
  • Dziennikowanie i strukturyzowana diagnostyka
  • Narzędzia diagnostyki i profilowania .NET
  • Profilowanie CPU i pamięci
  • Detekcja wycieków pamięci
  • Śledzenie wolnego renderowania UI
  • Debugowanie problemów specyficznych dla platformy
  • Wykorzystanie diagnostyki urządzenia i emulatora
  • Ćwiczenie: Diagnostyka i rozwiązywanie powszechnych problemów wydajności i czasu wykonania

10. Wzorce architektoniczne i najlepsze praktyki dla aplikacji dużej skali

  • Dobór odpowiedniej architektury aplikacji
  • Koncepcje Czystej Architektury
  • Architektura warstwowa
  • Rozdzielenie UI, logiki biznesowej i dostępu do danych
  • Abstrakcje Repository i Service
  • Zasady SOLID w aplikacjach MAUI
  • Zarządzanie stanem aplikacji
  • Organizacja projektu oparta na funkcjach
  • Modułowy projekt aplikacji
  • Rozważenia dotyczące skalowalności i utrzymywalności
  • Ćwiczenie: Projektowanie architektury aplikacji MAUI o skali produkcyjnej

11. Zaawansowane strategie testowania

  • Testowanie jednostkowe ViewModel i usług
  • Testowanie logiki biznesowej niezależnie od UI
  • Podręcznik zależności
  • Testowanie kodu asynchronicznego
  • Testowanie nawigacji i stanu aplikacji
  • Koncepcje testowania UI i integracyjnych
  • Architektura aplikacji podatna na testy
  • Rozważenia dotyczące ciągłego integracji
  • Ćwiczenie: Tworzenie zestawu testów dla aplikacji MAUI

12. Bezpieczeństwo w aplikacjach .NET MAUI

  • Bezpieczna architektura aplikacji
  • Bezpieczne przechowywanie wrażliwych informacji
  • Uwierzytelnianie i autoryzacja
  • Zarządzanie tokenami
  • Rozważenia dotyczące bezpieczeństwa API
  • Ochrona danych przechowywanych lokalnie
  • Bezpieczna komunikacja z usługami backendowymi
  • Obsługa poświadczeń i sekretów
  • Powszechne ryzyka bezpieczeństwa aplikacji mobilnych
  • Ćwiczenie: Implementacja bezpiecznego uwierzytelniania i przechowywania poświadczeń

13. Wdrażanie i dystrybucja aplikacji

  • Budowanie aplikacji dla różnych platform
  • Konfiguracje wydania (Release) versus debugowania (Debug)
  • Podpisywanie aplikacji i certyfikaty
  • Pakowanie aplikacji Android
  • Koncepcje wdrażania aplikacji iOS
  • Pakowanie aplikacji Windows
  • Wersjonowanie i zarządzanie wydaniem
  • Konfiguracja zależna od środowiska
  • Publikacja aplikacji w sklepach z aplikacjami
  • Rozważenia dotyczące CI/CD dla projektów MAUI
  • Ćwiczenie: Przygotowanie aplikacji MAUI do wdrożenia produkcyjnego

14. Najnowsze funkcje .NET MAUI i Visual Studio

  • Ostatnie ulepszenia i zmiany w .NET MAUI
  • Nowe kontrolki, API i możliwości programistyczne
  • Ulepszenia obsłudze i integracji z platformą
  • Narzędzia Visual Studio i funkcje podnoszące produktywność
  • Współczesne praktyki programowania .NET
  • Ewaluacja bibliotek stron trzecich i funkcji MAUI Community Toolkit
  • Rozważenia dotyczące migracji i aktualizacji
  • Utrzymywanie aplikacji przez różne wersje .NET

15. Ćwiczenie końcowe: Budowanie aplikacji .NET MAUI gotowej do produkcji

  • Zdefiniowanie wymagań i architektury aplikacji
  • Projektowanie struktury MVVM
  • Konfiguracja wstrzykiwania zależności
  • Implementacja ponownie używalnych komponentów UI
  • Połączenie ze źródłami danych zdalnych i lokalnych
  • Dodanie cache'owania i synchronizacji
  • Implementacja walidacji i obsługi błędów
  • Zastosowanie optymalizacji wydajności
  • Dodanie bezpieczeństwa i uwierzytelniania
  • Testowanie krytycznej funkcjonalności aplikacji
  • Przygotowanie aplikacji do wdrożenia

16. Podsumowanie i kolejne kroki

  • Przegląd zaawansowanych koncepcji .NET MAUI
  • Powszechne pułapki architektoniczne i wydajnościowe
  • Zalecane praktyki programistyczne
  • Dalsze zasoby do nauki
  • Planowanie kolejnych kroków w kierunku rozwoju MAUI gotowego do produkcji
  • Pytania i odpowiedzi oraz dyskusja projektów uczestników

Wymagania

  • Znajomość języka programowania C#
  • Solidne zrozumienie koncepcji programowania obiektowego (OOP)
  • Znajomość frameworku .NET

Grupa docelowa

  • Programiści

Liczba uczestników


Cena za uczestnika (netto)

Opinie uczestników (3)

Propozycje terminów

Powiązane Kategorie