Kursplan
Införandet
Vecka 1: Översikt över Mobile Development
- Mobilt ekosystem och plattformar
- Översikt över mobila operativsystem (iOS och Android)
- Viktiga skillnader mellan iOS, Android och plattformsoberoende utveckling
- Populära appbutiker (Apple App Store, Google Play Store)
- Introduktion till native, hybrid och plattformsoberoende utveckling
- Native vs Hybrid vs Plattformsoberoende
- Fördelar och utmaningar med varje utvecklingsmetod
- Översikt över Swift (för iOS), Kotlin (för Android) och React Native (plattformsoberoende)
- Hur kod översätts till mobila plattformar (JavaSkript till inbyggd kod i React Native)
- Programming Grundläggande principer
- Introduktion till programmeringskoncept (variabler, datatyper, funktioner, reglerflöde)
- Jämförelse av Swift, Kotlin och JavaSkriptsyntax
- Skriva enkla program med hjälp av Swift, Kotlin och JavaScript
- Konfigurera utvecklingsmiljöer
- Installera Xcode och Android Studio
- Konfigurera React Native CLI och Expo
- Köra grundläggande "Hello World"-appar på simulatorer och emulatorer
Vecka 2: Introduktion till Swift, Kotlin och JavaScript
- Swift Programming för iOS
- Variabler, konstanter och datatyper i Swift
- Kontrollflödessatser (
if
,switch
loopar) - Funktioner och parametrar i Swift
- Introduktion till Xcodes gränssnitt och Swift Playgrounds
- Kotlin Programming för Android
- Variabler, datatyper och funktioner i Kotlin
- Förstå Kotlin:s nollsäkerhet
- Kontrollflöde och loopstrukturer
- Introduktion till Android Studios gränssnitt och Kotlin Playground
- Java Skript för React Native
- Variabler, konstanter och kontrollflöde i JavaScript
- ES6-funktioner: pilfunktioner, mallliteraler och destrukturering
- Skriva och köra grundläggande JavaScript-program i React Native med Expo
Vecka 3: iOS Design av användargränssnitt
- Användargränssnitt Elements i iOS
- Introduktion till UIKit och SwiftUI
- Lägga till och anpassa gränssnittselement som knappar, etiketter och textfält
- Använda Interface Builder för att designa användargränssnittet
- Arbeta med Storyboards och designa användargränssnitt för flera skärmar
- Automatisk layout och begränsningar
- Förstå systemet för automatisk layout
- Använda begränsningar för responsiva layouter över olika skärmstorlekar
- Skapa stackvyer och dynamiskt justera gränssnittselement
- Swift Grunderna i användargränssnittet
- Introduktion till deklarativ UI-design i SwiftUI
- Skapa enkla gränssnittskomponenter med hjälp av SwiftUI
Vecka 4: Android Design av användargränssnitt
- XML Layouter i Android
- Introduktion till XML-baserad layoutdesign
- Arbeta med vanliga layouter: LinearLayout, RelativeLayout, ConstraintLayout
- Lägga till och anpassa gränssnittselement: knappar, textvyer, bildvyer
- Använda ConstraintLayout för dynamiska och dynamiska layouter
- Materialutformning
- Integrera principer för materialdesign (färger, ikoner, typografi)
- Använda materialkomponenter (knappar, flytande åtgärdsknappar, kort)
- Implementera teman och styling för Android appar
Vecka 5: React Inbyggd design av användargränssnitt
- React Inbyggd Flexbox-layout
- Förstå Flexbox för responsiv layoutdesign
- Skapa kolumn- och radbaserade layouter
- Formatera gränssnittskomponenter med Flexbox-egenskaper (justifyContent, alignItems osv.)
- React Inbyggda komponenter
- Arbeta med kärnkomponenter som
Text
,View
,TextInput
ochButton
- Skapa interaktiva gränssnittselement, till exempel formulär och knappar
- Använda komponenten
ScrollView
för dynamiskt innehåll
- Arbeta med kärnkomponenter som
Vecka 6: Datahantering i iOS och Android
- iOS Hantering av data
- Använda UserDefaults för enkel datapersistence
- Introduktion till kärndata för lokal lagring av komplexa data
- Hämta data från API:er med hjälp av URLSession
- Parsa JSON-data och visa dem i användargränssnittet
- Android Hantering av data
- Använda SharedPreferences för att lagra små mängder data
- Introduktion till SQLite och Room Persistence Library för hantering av databaser
- Hämta data från API:er med hjälp av Retrofit
- Tolka JSON och hantera API-svar
Vecka 7: React Native State Management och API:er
- Tillstånd och rekvisita på React Native
- Hantera dataflöde inom React Inbyggda komponenter
- Använda
useState
kroken för att hantera det lokala komponenttillståndet - Skicka data mellan överordnade och underordnade komponenter via rekvisita
- Hämtar data i React Native
- Använda Fetch API och Axios för att göra HTTP-förfrågningar
- Visa hämtade data i listor (med
FlatList
,SectionList
) - Spara data lokalt med hjälp av AsyncStorage i React Native
Vecka 8: Navigering i iOS och Android
- iOS Navigering
- Introduktion till navigationskontroller och hantering av flera skärmar
- Använda övergångar för att växla mellan vykontrollanter
- Skicka data mellan vykontrollanter
- Implementera TabBar och NavigationBar för strukturerad navigering
- Android Navigering
- Arbeta med Activities och avsikter för appar med flera skärmar
- Skicka data mellan Activities med hjälp av Bundles
- Skapa en navigeringslåda och BottomNavigationView
- Implementera fragment för flexibel navigering i användargränssnittet
Vecka 9: Navigering på React Native
- React Grundläggande om navigering
- Installera och ställa in React Navigering
- Använda Stack Navigator för skärmövergångar
- Implementera Tab Navigator och Drawer Navigator för komplex navigering
- Skicka parametrar mellan skärmar och hantera navigeringstillstånd
Vecka 10: Avancerade funktioner
- iOS Avancerade funktioner:
- Kärnplats och kartor
- Accessing enhetsplats med kärnplats
- Visa kartor med MapKit
- Hantering av geolokalisering och spårning av användares plats
- Kamera och media
- Accessing enhetskamera och fotobibliotek
- Ta och visa bilder med UIImagePickerController
- Lagra och hämta mediefiler
- Kärnplats och kartor
- Android Avancerade funktioner
- Läge och kartor
- Använda Google Maps API för att visa kartor och användarplats
- Accessing av GPS-data och hantering av geolokalisering
- Kamera och media
- Använda CameraX för att ta bilder och hantera kamerabehörigheter
- Visa bilder och hantera medialagring
- Läge och kartor
- React Inbyggda avancerade funktioner
- React Inhemska kartor
- Integrera kartor med hjälp av
react-native-maps
- Hantering av platsbaserade tjänster (geolokalisering, ruttkartläggning)
- Integrera kartor med hjälp av
- Åtkomst till kamera och media
- Använda React Native Camera-biblioteket för att ta bilder
- AccessLagring och hantering av enhetsmedia files
- React Inhemska kartor
Vecka 11: Felsökning och testning
- iOS Felsökning och testning
- Använda Xcode-felsökare
- Ställa in brytpunkter och inspektera variabler i Xcode
- Använda konsolen för felsökning i realtid
- Vanliga felsökningsproblem och hur du löser dem
- Enhetstestning i iOS
- Skriva och köra enhetstester med hjälp av XCTest-ramverket
- Simulera objekt och testa gränssnittskomponenter
- Använda Xcode-felsökare
- Android Felsökning och testning
- Använda Logcat i Android Studio
- Loggning och analys av fel med hjälp av Logcat
- Felsöka Android appar med brytpunkter
- Enhetstestning i Android
- Skriva enhetstester med JUnit
- Testa Android UI-komponenter med espresso
- Använda Logcat i Android Studio
- React Inbyggd felsökning och testning
- React Inbyggda felsökningsverktyg
- Använda Chrome DevTools och React Native Debugger för felsökning i realtid
- Konsolloggar och inspektion av nätverksbegäranden
- Enhetstestning i React Native
- Skriva enhetstester med Jest och Enzyme
- Testning React Inbyggda komponenter och hantering av testfall
- React Inbyggda felsökningsverktyg
Vecka 12: Appdistribution och Capstone-projekt
- Distribution och distribution
- iOS Bidrag till App Store.
- Förbereda din app för distribution (ikoner, certifikat, etableringsprofiler)
- Använda App Store Connect för att skicka in appen för granskning
- Använda TestFlight för betatestning
- Android Inlämning i Play Butik
- Förbereda APK och signera appen för distribution
- Använda Google Play Console för att skicka in och spåra appar
- Så fungerar policyer och riktlinjer för Play Butik
- iOS Bidrag till App Store.
- Utveckling av Capstone-projekt
- Slutlig projektutveckling
- Skapa en fullt fungerande app efter eget val
- Innehåller avancerade funktioner som API-samtal, navigering, media och plats
- Presentera och demonstrera den slutliga appen för kollegor och lärare
- Slutlig projektutveckling
Sammanfattning och nästa steg
Krav
- Grundläggande förståelse för programmeringskoncept
- Grundläggande kunskaper om JavaScript
Publik
- Mobila utvecklare
- Programmerare
Vittnesmål (4)
Edward är en fantastisk facilitator
Zibusiso Ncube - Agricatural Research Council
Kurs - Ionic 4 and Angular for Developers
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
Kurs - Flutter Development Bootcamp with Dart
The trainer was enthusiastic, kind, and loved the topic
Isaac Murphy - Royal New Zealand Airforce
Kurs - Build Native iOS and Android Apps with Flutter
Learning the steps required to implement the MVVM model.