Zaawansowane programowanie na platformie iOS
LICZBA DNI: 5 (40h)
KOD KURSU: IOS/ADV
Weź udział w szkoleniu
Termin
Lokalizacja
Trener
Cena / os
5
lipca
Warszawa,
Poznań,
Zdalne,
27
września
Warszawa,
Gdańsk,
Zdalne,
Termin
5
lipca
Lokalizacja
Warszawa,
Poznań,
Zdalne,
Trener
Cena / os
Termin
27
września
Lokalizacja
Warszawa,
Gdańsk,
Zdalne,
Cena / os
Powiadom
o kolejnych terminach
O szkoleniu
DLA KOGO?
Szkolenie dedykowane dla osób znających platformę iOS, chcących poznać bardziej zaawansowane aspekty dotyczące między innymi architektury, dobrych praktyk, wykorzystania dostępnego SDK oraz sensorów urządzenia
WYMAGANIA
Od uczestników szkolenia wymagana jest praktyczna umiejętność programowania w języku Swift, a także podstawowa znajomość platformy iOS
ZALETY
Rozbudowana część warsztatowa pomagająca zrozumieć i utrwalić omawiane zagadnienia
Uczestnicy zdobywają ogromną dawkę życiowej wiedzy gotową do wykorzystania podczas realizacji własnych projektów
Cele szkolenia
Rozszerzenie wiedzy o elementy zaawansowane m.in. architektura aplikacji czy wykorzystanie peryferiów urządzenia
Poznanie istotnych frameworków takich jak Combine, SwiftUI, Core Data
Nabycie wiedzy niezbędnej do tworzenia atrakcyjnego interfejsu użytkownika (grafika, animacje)
Program
Architektura aplikacji iOS
- Czysta architektura
- Poprawny podział odpowiedzialności komponentów aplikacji
- Wstrzykiwanie zależności
- Wzorce MVP, MVVM, VIPER
Combine framework
- Wprowadzenie do idei programowania reaktywnego
- Publikowanie i nasłuchiwanie zdarzeń
- Operatory (transformacja, filtrowanie, kombinowanie, czas)
- Sterowanie kontekstem wykonania (Schedulers)
- Praca ze strumieniami
- Debugowanie i obsługa błędów
- Testowanie
- Wykorzystanie / tworzenie rozszerzeń reaktywnych w kontekście istniejącego API
SwiftUI
- Wprowadzenie
- Budowanie interfejsu
- Stan i jego współdzielenie
- Nawigacja
- Budowanie złożonych widoków
- Testowanie i debugowanie
- Dobre praktyki
Wybrane elementy SDK
- Audio/video i zdjęcia
- Mapy
- Wykorzystanie sensorów
Grafika
- Graphics context
- Rysowanie
- Filtry i efekty
- Content mode
- Typy Image i ImageView
- Warstwy, transformacje, maski
Animacje
- Rola animacji w projektowaniu UI
- Animacje na poziomie kontrolek oraz kontrolerów
- UIViewPropertyAnimator
- Wykorzystanie warstwy CALayer
Core Data
- Architektura i główne założenia
- Bazowa konfiguracja (Core Data Stack)
- Modelowanie i praca z danymi
- Migracja danych
- Mierzenie i optymalizacja wydajności
- Dobre praktyki
