Návrh Školení
Zavedení
1. týden: Úvod do Mobile Development
- Ekosystém a trendy mobilních aplikací
- Úvod do prostředí mobilních aplikací (iOS a Android)
- Rozdíly mezi nativními, hybridními a multiplatformními aplikacemi
- Přehled pracovních postupů a nástrojů pro vývoj mobilních aplikací
- Nativní vs vývoj napříč platformami
- Klíčové rozdíly mezi vývojem aplikací pro jednu platformu (nativní) a více platforem (mezi platformami)
- Výhody a nevýhody jednotlivých přístupů
- Přehled běžných nativních platforem (iOS, Android) a multiplatformních nástrojů (React Nativní, Flutter)
- Úvod do JavaSkriptu Programming
- Základní syntaxe a struktura JavaSkriptu
- Proměnné, konstanty a datové typy (číslo, řetězec, boolean, objekt)
- Operátory a výrazy
- Řídicí tok:
if
,else
,switch
- Úvod do funkcí a rozsahů (globální vs místní rozsah)
- Nastavení Xcode pro vývoj iOS
- Úvod do Xcode IDE: Rozhraní, nástroje a pracovní postup
- Instalace Xcode a spuštění simulátoru iOS
- Úvod do programovacího jazyka Swift
- Napsání základní aplikace Swift a její spuštění na simulátoru iOS
- Nastavení Android Studia pro Android Development
- Instalace Android Studio a nastavení prostředí
- Konfigurace a používání emulátoru Android
- Úvod do programovacího jazyka Kotlin a základní syntaxe
- Napsání základní Kotlin aplikace a její spuštění na emulátoru Android
- Nastavení React Native Development Environment
- Instalace Node.js a React Native CLI
- Úvod do Expa a vytvoření projektu s Expo
- Spuštění jednoduché aplikace „Hello World“ na emulátorech iOS i Android
2. týden: iOS a Android Základy
- Úvod do Swift a Xcode IDE
- Proměnné a datové typy v Swift (Int, Float, String, Bool atd.)
- Konstanty s
let
a proměnné svar
- Řídící příkazy toku (
if
,switch
, loops) - Funkce a parametry v Swift
- Zpracování chyb v Swift
- Návrh uživatelského rozhraní v iOS
- Úvod do storyboardů a Xcode Interface Builder
- Navrhování rozvržení aplikací pomocí automatického rozvržení a omezení
- Přidávání komponent uživatelského rozhraní: tlačítka, štítky, textová pole, obrázky
- Zpracování uživatelských interakcí a událostí (např. kliknutí na tlačítka)
- Vytvoření jednoduchého přihlašovacího formuláře a ověření uživatelského vstupu
- Úvod do Kotlin a Android Studio IDE
- Základní Kotlin syntaxe (proměnné, datové typy a funkce)
- Pochopení nulových tříd bezpečnosti a dat Kotlin
- Úvod do Android architektury a komponent aplikací (Activities, Fragmenty)
- Zpracování životního cyklu aktivity v aplikacích Android
- Návrh uživatelského rozhraní v Android
- Navrhování Android UI pomocí XML souborů rozvržení
- Práce se správci rozložení (LinearLayout, RelativeLayout, ConstraintLayout)
- Přidání interaktivních komponent (tlačítka, zobrazení textu, úpravy textů)
- Použití Java/Kotlin ke zpracování uživatelských vstupů a přechodů aktivit
- Vytvoření přihlašovacího formuláře s ověřením vstupu
- Základy ladění v Xcode a Android Studio
- Jak používat body přerušení, protokoly a konzolu ladicího programu
- Běžné ladicí nástroje a techniky pro iOS (Xcode Instruments, Simulator)
- Běžné ladicí nástroje pro Android (Logcat, Android Debug Bridge)
- Testování a spouštění aplikací na skutečných zařízeních
- Připojení fyzických zařízení k Xcode a Android Studio
- Nasazení aplikací do fyzických zařízení (iPhony a Android telefony)
- Simulace různých podmínek sítě, úrovní baterie a výkonnostních metrik
Týden 3: Vývoj napříč platformami s React Native
- Úvod do React Native a JavaScript for Mobile
- Co je React Native a proč jej používat?
- Přehled toho, jak React Native překládá JavaSkript do nativního kódu
- Syntaxe JSX: Zápis struktur podobných HTML do JavaScriptu
- React komponenty: Funkční vs komponenty založené na třídě
- State and Props: Správa toku dat v rámci React Nativních komponent
- Styling v React Native
- Úvod do Flexboxu a jeho význam v návrhu layoutu
- Vytváření responzivních rozvržení pro iOS a Android
- Použití stylů specifických pro platformu pomocí modulu React Native's
Platform
- React Navigace pro aplikace napříč platformami
- Úvod do React Navigace a navigační kontejnery
- Vytvoření navigace zásobníku pro přechody na obrazovce
- Implementace navigace pomocí karet a zásuvek pro složitější aplikace
- Předávání dat mezi obrazovkami a správa navigačních stavů
- Accessnativní funkce zařízení
- Používání funkcí zařízení, jako je fotoaparát a poloha v React Nativní
- Integrace rozhraní API, jako je Geolocation, Camera a AsyncStorage
- Zpracování oprávnění pro přístup k hardwaru zařízení (rozdíly iOS a Android)
- Lokální ukládání dat pomocí AsyncStorage a integrace knihoven třetích stran pro zachování
- Příprava aplikací pro nasazení
- Konfigurace nastavení aplikace pro produkci v Xcode a Android Studio
- Vytváření souborů APK pro Android a testování na skutečných zařízeních
- Příprava iOS aplikací pro odeslání do App Store (ikony aplikací, podpisové certifikáty)
- Finalizace React Nativní projekty pro produkční nasazení na obou platformách
- Závěrečná prezentace projektu
- Představení finální multiplatformní React Nativní aplikace pro třídu
- Shromažďování zpětné vazby a diskuse o možných vylepšeních
- Závěrečná sekce otázek a odpovědí a závěrečné poznámky
Shrnutí a další kroky
Požadavky
- Základní porozumění programovacím pojmům
Publikum
- Mobilní vývojáři
- Programátoři
Reference (5)
Edward je úžasný facilitátor
Zibusiso Ncube - Agricatural Research Council
Kurz - Ionic 4 and Angular for Developers
Machine Translated
Moje oblíbená část je otázka a odpověď se Sirem. Jose. Je velmi znalý a zná odpovědi na naše otázky.
John Henry - Toyota Motor Philippines
Kurz - .NET MAUI (Intermediate)
Machine Translated
Možná by více cvičení mohlo být pro učení lepší, ale času bylo málo
Gianpiero Arico' - Urmet Spa
Kurz - Embedded Linux Systems Architecture
Machine Translated
Miguel's knowledge of the subject was extensive. He made the training easy to understand and the flow was balanced; adding on to each section with new features as needed. He covered everything that was asked and answered each and every question thoroughly. It was a very pleasant experience.
Paul Coaton - SEMPCheck Services
Kurz - Flutter Development Bootcamp with Dart
The trainer was enthusiastic, kind, and loved the topic