Návrh Školení

Zavedení

1. týden: Přehled Mobile Development

  • Mobilní ekosystém a platformy
    • Přehled mobilních operačních systémů (iOS a Android)
    • Klíčové rozdíly mezi iOS, Android a vývojem napříč platformami
    • Oblíbené obchody s aplikacemi (Apple App Store, Google Play Store)
    • Úvod do nativního, hybridního a multiplatformního vývoje
  • Nativní vs Hybrid vs Cross-Platform
    • Výhody a výzvy jednotlivých vývojových metod
    • Přehled Swift (pro iOS), Kotlin (pro Android) a React nativní (pro více platforem)
    • Jak se kód převádí na mobilní platformy (JavaSkript do nativního kódu v React Native)
  • Programming Základy
    • Úvod do programovacích konceptů (proměnné, datové typy, funkce, tok řízení)
    • Porovnání syntaxe skriptů Swift, Kotlin a Java
    • Psaní jednoduchých programů pomocí skriptů Swift, Kotlin a Java
  • Nastavení vývojových prostředí
    • Instalace Xcode a Android Studio
    • Nastavení React Native CLI a Expo
    • Spouštění základních aplikací „Hello World“ na simulátorech a emulátorech

2. týden: Úvod do Swift, Kotlin a JavaSkript

  • Swift Programming pro iOS
    • Proměnné, konstanty a datové typy v Swift
    • Řídicí příkazy toku ( if , switch , loops)
    • Funkce a parametry v Swift
    • Úvod do rozhraní Xcode a Swift Playgrounds
  • Kotlin Programming pro Android
    • Proměnné, datové typy a funkce v Kotlin
    • Pochopení nulové bezpečnosti Kotlin
    • Řídicí tok a smyčkové struktury
    • Úvod do rozhraní Android Studio a Kotlin Playground
  • JavaSkript pro React Native
    • Proměnné, konstanty a tok řízení ve JavaScriptu
    • Funkce ES6: funkce šipek, šablonové literály a destrukce
    • Psaní a spouštění základních JavaSkriptovacích programů v React Native pomocí Expo

3. týden: iOS Návrh uživatelského rozhraní

  • UI Elements in iOS
    • Úvod do UIKit a SwiftUI
    • Přidávání a přizpůsobení prvků uživatelského rozhraní, jako jsou tlačítka, štítky a textová pole
    • Použití Interface Builderu k návrhu uživatelského rozhraní
    • Práce se scénáři a navrhování uživatelského rozhraní pro více obrazovek
  • Automatické rozvržení a omezení
    • Pochopení systému automatického rozvržení
    • Použití omezení pro responzivní rozvržení na různých velikostech obrazovky
    • Vytváření pohledů na zásobník a dynamické úpravy prvků uživatelského rozhraní
  • SwiftZáklady uživatelského rozhraní
    • Úvod do deklarativního návrhu uživatelského rozhraní v SwiftUI
    • Vytváření jednoduchých komponent uživatelského rozhraní pomocí SwiftUI

4. týden: Android Návrh uživatelského rozhraní

  • XML Rozvržení v Android
    • Úvod do návrhu rozložení založeného na XML
    • Práce s běžnými rozloženími: LinearLayout, RelativeLayout, ConstraintLayout
    • Přidávání a přizpůsobení prvků uživatelského rozhraní: tlačítka, zobrazení textu, zobrazení obrázků
    • Použití ConstraintLayout pro responzivní a dynamické rozvržení
  • Material Design
    • Integrace principů Material Design (barvy, ikony, typografie)
    • Používání materiálových komponent (tlačítka, plovoucí akční tlačítka, karty)
    • Implementace motivů a stylů pro Android aplikace

5. týden: React Návrh nativního uživatelského rozhraní

  • React Nativní rozložení Flexbox
    • Pochopení Flexboxu pro citlivý design rozvržení
    • Vytváření sloupcových a řádkových rozložení
    • Stylování komponent uživatelského rozhraní pomocí vlastností Flexbox (justifyContent, alignItems atd.)
  • React Nativní komponenty
    • Práce se základními komponentami, jako je Text , View , TextInput a Button
    • Vytváření interaktivních prvků uživatelského rozhraní, jako jsou formuláře a tlačítka
    • Použití komponenty ScrollView pro dynamický obsah

6. týden: Zpracování dat v iOS a Android

  • iOS Nakládání s údaji
    • Použití UserDefaults pro jednoduchou perzistenci dat
    • Úvod do Core Data pro lokální ukládání komplexních dat
    • Načítání dat z API pomocí URLSession
    • Analýza dat JSON a jejich zobrazení v uživatelském rozhraní
  • Android Nakládání s údaji
    • Použití SharedPreferences pro ukládání malého množství dat
    • Úvod do SQLite a Room Persistence Library pro správu databází
    • Načítání dat z API pomocí Retrofit
    • Analýza JSON a zpracování odpovědí API

7. týden: React Nativní stav Management a API

  • Stav a rekvizity v React Nativní
    • Řízení toku dat v rámci React Nativní komponenty
    • Použití háku useState pro správu stavu místní komponenty
    • Předávání dat mezi nadřazenými a podřízenými komponentami prostřednictvím rekvizit
  • Načítání dat v React Native
    • Použití rozhraní Fetch API a Axios k vytváření požadavků HTTP
    • Zobrazení načtených dat v seznamech (pomocí FlatList , SectionList )
    • Trvalá data lokálně pomocí AsyncStorage v React Native

8. týden: Navigace v iOS a Android

  • iOS Navigace
    • Úvod do navigačních ovladačů a správa více obrazovek
    • Použití přechodů k přechodu mezi ovladači zobrazení
    • Předávání dat mezi ovladači zobrazení
    • Implementace TabBar a NavigationBar pro strukturovanou navigaci
  • Android Navigace
    • Práce s Activities a Intent pro aplikace pro více obrazovek
    • Předávání dat mezi Activitis pomocí balíčků
    • Vytvoření navigační zásuvky a zobrazení BottomNavigationView
    • Implementace fragmentů pro flexibilní navigaci uživatelského rozhraní

9. týden: Navigace v React Native

  • React Základy navigace
    • Instalace a nastavení React Navigace
    • Použití Stack Navigator pro přechody mezi obrazovkami
    • Implementace Tab Navigator a Drawer Navigator pro komplexní navigaci
    • Předávání parametrů mezi obrazovkami a správa stavu navigace

10. týden: Pokročilé funkce

  • iOS Pokročilé funkce:
    • Umístění jádra a mapy
      • Accessumístění zařízení pomocí Core Location
      • Zobrazení map pomocí MapKit
      • Zpracování geolokace a sledování polohy uživatele
    • Fotoaparát a média
      • Accesszařízení fotoaparátu a knihovny fotografií
      • Pořizování a zobrazování obrázků pomocí UIImagePickerController
      • Ukládání a načítání mediálních souborů
  • Android Pokročilé funkce
    • Umístění a mapy
      • Použití Google Maps API k zobrazení map a polohy uživatele
      • Accesssběr dat GPS a zpracování geolokace
    • Fotoaparát a média
      • Použití CameraX k pořizování fotografií a zpracování oprávnění k fotoaparátu
      • Zobrazování obrázků a manipulace s ukládáním médií
  • React Nativní pokročilé funkce
    • React Původní mapy
      • Integrace map pomocí react-native-maps
      • Manipulace se službami založenými na poloze (geolokace, mapování tras)
    • Přístup k fotoaparátu a médiím
      • Použití knihovny React Native Camera pro pořizování fotografií
      • Accessukládání médií do zařízení a manipulace se soubory

11. týden: Ladění a testování

  • iOS Ladění a testování
    • Pomocí ladicího programu Xcode
      • Nastavení zarážek a kontrola proměnných v Xcode
      • Použití konzole pro ladění v reálném čase
      • Běžné problémy s laděním a jak je řešit
    • Testování jednotek v iOS
      • Psaní a spouštění jednotkových testů pomocí rámce XCTest
      • Zesměšňování objektů a testování komponent uživatelského rozhraní
  • Android Ladění a testování
    • Použití Logcat v Android Studiu
      • Protokolování a analýza chyb pomocí Logcat
      • Ladění Android aplikací s body přerušení
    • Testování jednotek v Android
      • Psaní jednotkových testů pomocí JUnit
      • Testování Android komponent uživatelského rozhraní s Espressem
  • React Nativní ladění a testování
    • React Nativní nástroje pro ladění
      • Použití Chrome DevTools a React Native Debugger pro ladění v reálném čase
      • Protokoly konzoly a kontrola síťových požadavků
    • Testování jednotek v React Nativní
      • Psaní jednotkových testů pomocí Jest a Enzyme
      • Testování React Nativní komponenty a správa testovacích případů

12. týden: Nasazení aplikace a projekt Capstone

  • Nasazení a distribuce
    • iOS Odeslání do App Store
      • Příprava vaší aplikace pro distribuci (ikony, certifikáty, zřizovací profily)
      • Pomocí App Store Connect odešlete aplikaci ke kontrole
      • Použití TestFlight pro beta testování
    • Android Odeslání do Obchodu Play
      • Příprava APK a podepsání aplikace pro distribuci
      • Používání Google Play Console k odesílání a sledování aplikací
      • Porozumění zásadám a pokynům Obchodu Play
  • Vývoj projektu Capstone
    • Konečný vývoj projektu
      • Vytvoření plně funkční aplikace dle vašeho výběru
      • Začlenění pokročilých funkcí, jako jsou volání API, navigace, média a umístění
      • Prezentace a ukázka finální aplikace kolegům a instruktorům

Shrnutí a další kroky

Požadavky

  • Základní porozumění programovacím pojmům
  • Základní znalost JavaScriptu

Publikum

  • Mobilní vývojáři
  • Programátoři
 420 hodiny

Počet účastníků


Price per participant

Reference (5)

Upcoming Courses

Související kategorie