Plan Szkolenia
Podstawowe koncepcje programowania
- Koncepcje OOP
- Czym jest oprogramowanie
- Koncepcja pokojów uporządkowanych a nieuporządkowanych w programowaniu
- Dlaczego oprogramowanie
Dlaczego Apple i iOS
- Dlaczego iOS
- Historia Apple
- Historia iOS
- USP Apple
- Za co Apple jest znane
- UX vs UI
Środowisko programistyczne
- Wymagania środowiska programistycznego
- Xcode i SDK iOS
- Rejestracja w Apple Developer
- Powody odrzucania aplikacji
- Wytyczne dotyczące interfejsu użytkownika
Projekty Xcode iOS
- Przegląd Xcode
- Tworzenie projektu iOS
- Uruchamianie na symulatorze i rzeczywistych urządzeniach
Podstawy Swift
- Dlaczego Objective C, a teraz Swift?
- WOW czynniki w Swift
- Zmienne
- Stałe
- Hello World w Swift
- Tworzenie UILabel z kodu
Animacja obrazów i ładowanie obrazów
- UIImageView
- Podstawowe animacje UIView i UIImageView
- Playground
- Leniwe ładowanie obrazów
- Leniwe właściwości
Klasy i sceny w Swift
- Tworzenie klas Swift
- Zarządzanie pamięcią
- Silne i słabe referencje
- Typy konstruktorów i destruktory w Swift
- Protokoły, Hashable i Printable
- Dziedziczenie
- Tworzenie scen
- Implementacja kontrolerów widoków
- Playground
Cykl życia i łańcuch odpowiedzi
- Cykl życia widoku
- Cykl życia aplikacji
- Łańcuch odpowiedzi - metody touchBegan, touchMoved itp.
- NSTimer
Adaptacyjny układ
- Storyboards vs XiB
- Obsługa wielu urządzeń
- Rozmiary ikon i orientacja urządzenia
- Budowanie interfejsu użytkownika za pomocą kodu
- Outlety i akcje
- Protokoły - wymagane i opcjonalne
- Zarządzanie pamięcią
Powiadomienia i lokalizacja
- Powiadomienia push - ciche i push
- Lokalizacja
Przegląd Objective C
- Właściwości
- Kategorie
- Składnia funkcji
- Atrybuty właściwości readWrite i readOnly
Integracja mediów społecznościowych w iOS:
- Integracja z Facebookiem
- Integracja z Twitterem
- Integracja poczty
- Integracja aplikacji firm trzecich
Komponenty UI w iOS:
- UITextField
- UITextView
- UISegementControl
- UISlider
- UiSwtich
- UIProgessBar
- UIPageControl
- UIStepper
- UIScrollView
- UIPicker
- UIActionSheet
- UIWebView
- SearchBar
Inne podstawowe komponenty i inne w iOS:
- Grupy i foldery
- Zamknięcia
- Krotki
- Sesja URL
- URLRequest
- UIAlertView
- UIActivityIndicatorView
- internal, public, private
- Guard
- Opcjonalne
Wątkowanie w iOS:
- GCD
- NSOperationQueue
- Główny wątek i wątki w tle
Interakcja użytkownika
- Przyciski i obsługa
- Rozpoznawanie gestów przeciągania
- Rozpoznawanie gestów dotyku
- Niestandardowy widok tabeli
- Podstawy widoku kolekcji
Aplikacje wieloekranowe
- Nawigacja tabeli
- Aplikacje z zakładkami
- Kontrolery nawigacji
- Prezentowanie kontrolera i różne animacje podczas prezentowania i wypychania kontrolerów
Usługi lokalizacyjne
- Pozycja i wysokość
- Kierunek kompasu
Dostęp do urządzenia i przechowywanie
- Przechowywanie plików
- Dostęp do biblioteki muzyki
- CoreData i Sqlite w iOS
- Łańcuch kluczy
- Domyślne ustawienia użytkownika
- PLists
- NSSearchDomain
- Koncept katalogu i bezpieczeństwo aplikacji NSSearchDomain
Framework mowy
- Mowa na tekst
- Tekst na mowę
Framework Multipeer
- Wysyłanie danych z jednego urządzenia na drugie
- Łączenie wielu urządzeń
Sieci
- Dostęp do sieci
- Serializacja i deserializacja JSON
- Usługi REST
- Podstawy parsowania XML
Przesyłanie aplikacji do App Store
- ITunes Connect
- Portal dla programistów - profile provisioning
- Wdrażanie i dystrybucja
- Uruchamianie aplikacji na rzeczywistych urządzeniach
- Przesyłanie aplikacji do App Store
Aplikacje
- Gra Dots: https://itunes.apple.com/app/the-dots-free/id850315430
- Aplikacja Notatki: Notes App
- Aplikacja Kontakty
- Pobieranie danych z serwera z otwartego API i tworzenie widoku tabeli oraz wypełnianie danych i pokazywanie szczegółów, a także pokazywanie paska wyszukiwania i wyszukiwanie czegoś oraz używanie Core Data do zapisywania danych offline
- Aplikacja według własnego pomysłu
Wymagania
Musisz mieć przynajmniej jedno doświadczenie w programowaniu w przeszłości.
Opinie uczestników (2)
Sposób przekazywania wiedzy i zdolności trenera do jej przekazu.
Jakub Rekas - Bitcomp Sp. z o.o.
Szkolenie - Machine Learning on iOS
Przetłumaczone przez sztuczną inteligencję
He's an experienced trainer with a real life experience in the topic he was teaching. That led the course to cover the most important topics which interests any developer working in the field, and small details would be easily overseen if he was not working in this platform. Moreover, he was giving the course using the latest versions of is and Swift (10 \ 3) and that is a huge advantage to be adapting such new technology in short time.
Abdullah Alaradi - Thiqah Business Services
Szkolenie - iPhone and iPad Development in Swift for iOS 8 and Xcode 6
Przetłumaczone przez sztuczną inteligencję