Poznaj Swifta tworząc aplikacje
Profesjonalne projekty dla systemu iOS
Swift został zaprezentowany światu w 2014 roku - dziś jest uznanym standardem dla
programistów platformy macOS i iOS. Równocześnie to jeden z najpopularniejszych języków
programowania na świecie. Charakteryzuje się zwięzłą i przejrzystą składnią, jest
łatwy do nauczenia się, wygodny i elastyczny. Programiści mawiają, że Swift podsuwa
nowe sposoby rozwiązywania starych problemów. Jeśli chcesz pisać efektywne i
bezpieczne, a przy tym eleganckie i przyjazne użytkownikom aplikacje dla maszyn z logo
jabłuszka, po prostu musisz nauczyć się Swifta!
Jeśli jesteś początkującym programistą i postanowiłeś nauczyć się rzetelnego
programowania aplikacji mobilnych dla iOS, to książka dla Ciebie. Znajdziesz w niej
przystępne wprowadzenie do koncepcji programowania oraz podstawy języka Swift.
Przećwiczysz tworzenie aplikacji mobilnych na platformie iOS. Dowiesz się, jak tworzyć
interfejs użytkownika za pomocą plików typu storyboard w Xcode, a także jak pobierać
i wyświetlać obrazy oraz zapisywać i wczytywać informacje w trakcie różnych sesji
pracy z aplikacją. Nauczysz się korzystać z menedżera zależności CocoaPods i
przekonasz się, jak bardzo jest użyteczny. Poznasz kilka przydatnych bibliotek open
source do szybkiego tworzenia oprogramowania, dowiesz się też, jak opracowywać
aplikacje pobierające informacje i zasoby z chmury.
Najważniejsze zagadnienia:
składnia i elementy języka Swift oraz praca w środowisku Xcode
struktura aplikacji mobilnej
zastosowanie poszczególnych struktur danych w Swifcie
tworzenie GUI i zapewnianie interaktywności aplikacji
wykorzystywanie informacji pochodzących z publicznego API do budowy swojej
aplikacji
biblioteki dla open source Swifta
O autorze 7
O recenzencie 8
Wprowadzenie 9
Rozdział 1. Podstawy Swifta - zmienne i funkcje 13
- Zmienna 14
- Typ opcjonalny 18
- Typ wyliczeniowy 19
- Podstawowe konstrukcje przepływu sposobu działania programu 20
- Konstrukcja if 20
- Pętla 21
- Pętla while 22
- Konstrukcja switch 23
- Funkcja 24
- Czym jest krotka? 26
- Czym jest konstrukcja guard? 28
- Jak radzić sobie z dużymi problemami? 28
- Podsumowanie 29
Rozdział 2. Xcode i projekt typu playground 31
- Instalowanie Xcode 31
- Przedstawiam Ci Xcode 33
- Co znajduje się na ekranie? 35
- Projekt typu playground 47
- Czym jest projekt typu playground? 47
- Dodawanie kodu do projektu 48
- Dodawanie pliku pomocniczego do projektu 52
- Dodawanie zasobu do projektu 53
- Konwertowanie projektu typu playground na przestrzeń roboczą 54
- Kod znaczników w projekcie typu playground 55
- Podsumowanie 60
Rozdział 3. Tworzenie minimalnej aplikacji mobilnej 61
- Pierwsza aplikacja iOS 61
- Struktura projektu 73
- System kontroli wersji Git 78
- Podsumowanie 82
Rozdział 4. Struktury, klasy i dziedziczenie 83
- Struktury i klasy 83
- Rozszerzenie 89
- Metoda deinit() 91
- Właściwości i metody typu 92
- Dodawanie niestandardowych typów danych do projektu typu playground 93
- Dziedziczenie 97
- Klasa bazowa 97
- Architektura MVC 100
- Podsumowanie 104
Rozdział 5. Dodawanie interaktywności do pierwszej aplikacji 105
- Plik Storyboard 105
- Wybrane kontrolki interfejsu użytkownika 107
- Dodawanie elementów do pliku Storyboard 111
- Połączenie interfejsu użytkownika z kodem 114
- Ogólna analiza 126
- Podsumowanie 126
Rozdział 6. Używanie struktur danych, programowania zorientowanego obiektowo
i protokołów 129
- Podstawowe typy kolekcji 130
- Typ generyczny 130
- Tablica 131
- Zbiór 133
- Słownik 136
- Wybór najlepszego typu kolekcji 138
- Lista elementów w projekcie typu playground 139
- UICollectionView 139
- UICollectionViewCell 141
- Ponowne używanie komórek 144
- Układy 146
- Widok tabeli w aplikacji iOS 149
- Model listy miast 151
- Wyświetlenie wszystkich miast 152
- Implementacja wyszukiwania 156
- Protokół 158
- Protokół i dziedziczenie 160
- Podsumowanie 163
Rozdział 7. Tworzenie prostej aplikacji prognozy pogody 165
- Definiowanie ekranów aplikacji 165
- Ekran główny aplikacji 170
- Ekran ulubionych lokalizacji 173
- Ograniczenia 175
- Ekran wyboru lokalizacji 176
- Model 179
- Lokalizacje 186
- Kontrolery i przejścia 191
- Dalsze usprawnienia aplikacji 197
- Podsumowanie 198
Rozdział 8. Wprowadzenie do CocoaPods i zależności projektu 199
- Tworzenie oprogramowania w nowoczesny sposób 200
- Ruby i CocoaPods 201
- Użyteczne polecenia CocoaPods 205
- Carthage 206
- Swift Package Manager 207
- Użyteczne polecenia SPM 208
- Popularne biblioteki opracowane przez podmioty zewnętrzne 214
- Alamofire 215
- Texture 216
- RxSwift 217
- Podsumowanie 217
Rozdział 9. Usprawnianie aplikacji prognozy pogody 219
- API prognozy pogody 219
- Co to jest API? 220
- Lista wybranych żądań API 221
- Utworzenie nowych modeli 223
- Czyste żądania sieciowe 226
- Implementowanie Alamofire 231
- Usprawnienia za pomocą bibliotek opracowanych przez podmioty zewnętrzne 234
- Lepsza obsługa błędów 234
- Ekran informacji dodatkowych 238
- Podsumowanie 241
Rozdział 10. Tworzenie aplikacji przypominającej Instagram 243
- Projekt aplikacji opartej na kartach 243
- Firebase 244
- Ekran logowania 246
- Pozostałe ekrany aplikacji 253
- Niestandardowe przyciski na pasku kart 254
- Utworzenie postu 257
- Modele 262
- Firebase 263
- Filtry 268
- Podsumowanie 270
Rozdział 11. Ciąg dalszy pracy nad aplikacją przypominającą Instagram 271
- Ekran główny 271
- Ekran profilu 276
- Ekran wyszukiwania 284
- Ekran ulubionych 287
- Dopracowanie ekranu głównego 289
- Podsumowanie 297
Dodatek A. Udział w projekcie typu open source 299
- Konto w serwisie GitHub 299
- Tworzenie odgałęzienia repozytorium 300
- Udział w pracy nad projektem 301
- Przygotowanie zgłoszenia 303
- Podsumowanie 306
Skorowidz 309
312 stron, Format: 17.0x24.0cm, oprawa miękka