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
aButton
- Vytváření interaktivních prvků uživatelského rozhraní, jako jsou formuláře a tlačítka
- Použití komponenty
ScrollView
pro dynamický obsah
- Práce se základními komponentami, jako je
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ů
- Umístění jádra a mapy
- 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í
- Umístění a mapy
- 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)
- Integrace map pomocí
- 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
- React Původní mapy
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í
- Pomocí ladicího programu Xcode
- 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
- Použití Logcat v Android Studiu
- 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ů
- React Nativní nástroje pro ladění
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
- iOS Odeslání do App Store
- 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
- Konečný vývoj projektu
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
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