Programowanie iOS z wykorzystaniem języka Swift 4.0
Przeznaczenie
Szkolenie jest przeznaczone dla osób, które nie miały wcześniej styczności z platformą iOS ani
z językiem Swift. Podczas szkolenia zostaną przedstawione podstawowe mechanizmy
platformy iOS. Uczestnicy otrzymują również niezbędne wprowadzenie do języka Swift, który
stał się standardem, jeśli chodzi o tworzenie aplikacji przeznaczonych na ten system.
Przyswojona wiedza pozwoli uczestnikom rozpocząć pracę jako początkujący programista iOS
jak i spróbować tworzenia aplikacji na własną rękę.
Szkolenie nie jest wskazane dla osób, które znają już platformę iOS i piszą na nią aplikacje w
języku Objective-C, a chciałyby jedynie poznać język Swift. Wprawdzie pierwszego dnia
szkolenia na omówienie tego języka jest kładziony duży nacisk, jednak w kolejnych dniach
staje się on już tylko narzędziem do nauki samego systemu iOS, a nie celem szkoleniowym
samym w sobie.
Forma:
Szkolenie ma charakter warsztatowy – choć każdy temat rozpoczyna się wprowadzeniem
teoretycznym, główny nacisk jest kładziony na ćwiczenia, które uczestnicy wykonują pod
nadzorem prowadzącego.
Czas trwania:3 dni
Wymagania:
Komputer typu Mac
Zainstalowany Xcode w wersji minimum 8.3.3 (można używać Xcode 9 Beta)
Agenda szkolenia:
1. Ogólna specyfika tworzenia aplikacji na system iOS
1. Ogólny zarys systemu iOS, przedstawienie urządzeń działających pod tym
systemem
2. Wymagania sprzętowe, przedstawienie systemu Mac OS X, przedstawienie narzędzi
3. Omówienie środowiska deweloperskiego – Xcode
4. Proces testowania i publikowania aplikacji w App Store
2. Podstawy języka Swift
1. Charakterystyka ogólna języka
2. Deklarowanie stałych i zmiennych, podstawowe typy zmiennych
3. Typy opcjonalne
4. Instrukcje sterujące
5. Tworzenie funkcji i dopełnień
6. Definiowanie klas, właściwości i metod, dziedziczenie
7. Tworzenie i zwalnianie obiektów
8. Typy wyliczeniowe oraz struktury w Swift
9. Protokoły i ich wykorzystanie
10.Rozszerzenia
11. Typy generyczne
12.Obsługa błędów
13.Zarządzanie pamięcią w Swift
3. Tworzenie interfejsu użytkownika
1. Omówienie struktury projektu iOSowego
2. Przedstawienie Interface Builder oraz tzw. Storyboards
3. Podstawowe kontrolki w systemie iOS: UILabel, UIButton, UISwitch, UISlider,
UITextField
4. Podstawowa klasa widoku – UIView
5. Pozycjonowanie widoków – Auto Layout
6. Kontrolka UIStackView
7. Tworzenie dostosywujących się widoków – mechanizm Size Classes
8. Tworzenie list – klasa UITableView
9. Wzorzec Model-View-Controller w iOS
10.Zarządzanie widokami – zastosowanie klasy UIViewController
11. Implementacja hierarchii widoków – nawigacja w aplikacji
12.Wyświetlanie komunikatów użytkownikowi
13.Tworzenie animacji
4. Podstawy zarządzania danymi w systemie iOS (Core Data)
1. Omówienie frameworku Core Data
2. Tworzenie modelu danych (własnych encji) dla Core Data
3. Tworzenie, pobieranie, sortowanie, filtrowanie encji z Core Data
5. Podstawy komunikacji sieciowej w iOS
1. Omówienie klas do komunikacji sieciowej – URLSession i powiązanych
2. Przykładowa implementacja komunikacji sieciowej
6. Współbieżność oraz powiadomienia
1. Omówienie sposobów współbieżnego wykonywania kodu na iOS.
2. Przedstawienie klasy Thread
3. Przedstawienie mechanizmu GCD
4. Omówienie klasy OperationQueue i powiązanych
5. Selektory
6. Wysyłanie powiadomień wewnątrz aplikacji – omówienie klasy NotificationCenter.
7. Działanie aplikacji w tle
1. Omówienie stanów aplikacji w iOS
2. Wykonywanie kodu aplikacji w tle – tzw. Background Tasks
3. Wykonywanie określonych czynności (np. odgrywanie audio) w tle
8. Zarządzanie zależnościami oraz używanie zewnętrznych bibliotek – CocoaPods