Návrh Školení

Základní koncepty programování

  • Koncepty OOP (Orientace na objekty)
  • Co je software
  • Koncepce uspořádaných a neuspořádaných místností v programování
  • Proč Software

Proč Apple a iOS 

  • Proč iOS
  • Dějiny firmy Apple
  • Dějiny systému iOS
  • Jedinečné vlastnosti firmy Apple (USP)
  • To, za co je Apple známá
  • UX vs. UI

Vývojové prostředí

  • Požadavky na vývojové prostředí
  • Xcode a iOS SDK
  • Registrace u Apple Developer Programu
  • Důvody, proč aplikace mohou být zamítnuty
  • Lidské rozhraní (Human Interface Guidelines)

Projekty iOS v Xcode

  • Přehled Xcode
  • Vytváření iOS projektu
  • Spuštění aplikace na emulátoru a skutečných zařízeních

Základy Swift

  • Proč Objective C a nyní proč Swift?
  • Úžasné vlastnosti Swiftu
  • Proměnné
  • Konstanty
  • Ahoj, svět! (Hello World) v Swiftu
  • Vytvoření UILabel kódem

Animace obrázků a načítání obrázků

  • UIImageView
  • Základní animace UIView a UIImageView
  • Herní pole (Playground)
  • Líné načítání obrázků
  • Líné vlastnosti

Třídy a scény v Swiftu

  • Vytváření tříd v Swiftu
  • Správa paměti
  • Silné a slabé odkazy
  • Konstruktory a destruktory v Swiftu
  • Protokoly, Hashable a Printable
  • Dědičnost
  • Vytváření scén
  • Implementace view kontrolerů
  • Herní pole (Playground)

Životní cyklus a řetěz odpovědnosti (Responder Chain)

  • Životní cyklus view
  • Životní cyklus aplikace
  • Řetěz odpovědnosti - metody touchBegan, touchMoved atd.
  • NSTimer

Přizpůsobivé rozložení (Adaptive Layout)

  • Storyboards vs. XiB
  • Podpora pro více zařízení
  • Velikosti ikon a orientace zařízení
  • Vytváření uživatelského rozhraní kódem
  • Outlets a Actions
  • Protokoly - povinné a nepovinné
  • Správa paměti

Oznámení a lokalizace (Notifications and Localization)

  • Push oznámení - tichá a běžná push
  • Lokalizace

Přehled Objective C

  • Vlastnosti (Properties)
  • Kategorie (Categories)
  • Syntaxe funkcí
  • Atributy vlastností - readWrite a readOnly

Socialní média ve iOS:

  • Integrace s Facebookem
  • Integrace s Twitterem
  • Integrace e-mailu
  • Integrace třetích stran

Komponenty uživatelského rozhraní (UI Components) ve iOS:

  • UITextField
  • UITextView
  • UISegementControl
  • UISlider
  • UISwitch
  • UIProgressBar
  • UIPageControl
  • UIStepper
  • UIScrollView
  • UIPicker
  • UIActionSheet
  • UIWebView
  • SearchBar

Jiné základní komponenty a další ve iOS:

  • Skupiny a složky
  • Closures (uzávěry)
  • Tuples (n-tice)
  • URL Session
  • URLRequest
  • UIAlertView
  • UIActivityIndicatorView
  • internal, public, private
  • Guard (ochrana)
  • Optionals (volitelné hodnoty)

Vláknovost ve iOS:

  • GCD (Grand Central Dispatch)
  • NSOperationQueue
  • Hlavní vlákno a pozadí vláken

Uživatelské interakce:

  • Tlačítka a ovladače událostí (handlers)
  • Rozpoznání posuvného gesta (Pan gesture recognition)
  • Rozpoznání klepavého gesta (Tap gesture recognition)
  • Vlastní tabulka (Custom Table View)
  • Základy kolekčního zobrazení (Basics of Collection View)

Aplikace s více obrazovkami:

  • Navigace tabulkou
  • Aplikace se záložkami (Tabbed Applications)
  • Kontrolery navigace (Navigation Controllers)
  • Zobrazení kontroleru a různé animace při prezentaci a posouvání kontrolerů

Lokalizační služby:

  • Pozice a výška nad mořem (Altitude)
  • Směr kompasu

Přístup k zařízení a úložiště:

  • Úložiště souborů (File Storage)
  • Přístup k hudbě (Music Library Access)
  • CoreData a SQLite ve iOS
  • Klíčový řetěz (Key Chain)
  • Uživatelské vlastnosti (User Defaults)
  • PLists
  • NSSearchDomain
  • Koncepce složek a bezpečnost aplikací NSSearchDomain

Hlasový rámec (Speech Framework):

  • Převod řeči na text (Speech to Text)
  • Převod textu na řeč (Text to Speech)

Rámec pro multipeerové komunikace (Multipeer Framework):

  • Odesílání dat z jednoho zařízení na druhé
  • Připojení více zařízení

Sítě (Networking):

  • Přístup k síti
  • Serializace a deserializace JSONu
  • Webové služby REST
  • Základy parsování XML

Nahrání aplikace do App Store:

  • ITunes Connect
  • Vývojářské portály - zprostředkovací profily (Provisioning profiles)
  • Nasazení a distribuce
  • Spuštění aplikace na skutečném zařízení
  • Nahrání aplikace do App Store

Aplikace:

  • Hra Dots: https://itunes.apple.com/app/the-dots-free/id850315430
  • Poznámky aplikace: Notes App
  • Kontakty Aplikace
  • Získání dat z serveru pomocí otevřeného API, vytvoření tabulkového zobrazení a naplnění dat, zobrazení detailů, hledání dat a použití Core Data pro ukládání dat offline
  • Aplikace podle vlastního nápadu

Požadavky

Musíte mít v minulosti alespoň jednu zkušenost s programovacím jazykem.

 35 hodiny

Počet účastníků


Cena za účastníka

Reference (3)

Nadcházející kurzy

Související kategorie