Kursplan
Införandet
Vecka 1: Avancerade Swift, Kotlin och JavaSkriptbegrepp
- Swift (iOS)
- Avancerade funktioner: Stängningar, inläsning av värden, funktioner av högre ordning
- Protokollorienterad programmering och generiska läkemedel
- Minneshantering med ARC (Automatic Reference Counting)
- Kotlin (Android)
- Tilläggsfunktioner och Kotlin Standardbibliotek
- Coroutines för asynkron programmering
- Förseglade klasser, uppräkningar och avancerad felhantering
- Java Skript (React Inbyggt)
- Avancerade ES6+-funktioner: Destructuring, async/await, promises
- Begrepp inom funktionell programmering i JavaScript
- Arbeta med bibliotek från tredje part i React Native
Vecka 2: Mobilappsarkitektur och Design Patterns
- MVVM (Model-View-ViewModel) för iOS och Android
- Förstå MVVM-arkitektur för iOS (Swift) och Android (Kotlin)
- Implementera ViewModels och observera data med LiveData (Android) och Combine (iOS)
- Reactiv programmering med RxSwift och RxKotlin
- Komponentbaserad arkitektur i React Native
- Förstå komponenters livscykler och krokar
- Metodtips för att hantera tillstånd och rekvisita i stor skala
- Använda React Context API för global tillståndshantering
Vecka 3: Avancerade Networking koncept
- Networking I iOS (Swift)
- Arbeta med URLSession för anpassade nätverksbegäranden
- Avancerade REST API-anrop och felhantering
- Arbeta med kodningsbar och JSON-parsning
- Metodtips för säker API-kommunikation (SSL-fästning, OAuth)
- Networking i Android (Kotlin)
- Eftermontering för att göra API-anrop och hantera svar
- Avancerade mekanismer för API-felhantering och återförsök
- Använda Gson eller Moshi för JSON-parsning
- Säker kommunikation med HTTPS- och OAuth-autentisering
Vecka 4: Networking i React Native
- API-integration med Axios och Fetch
- Avancerad API-integration med Axios och Fetch
- Strategier för felhantering och återförsök i nätverksbegäranden
- Arbeta med autentisering (JWT, OAuth)
- WebSockets och realtid Communication
- Introduktion till WebSockets i React Native
- Skapa chatt- eller meddelandefunktioner i realtid med WebSocket-anslutningar
- Hantera beständiga anslutningar och datauppdateringar
Vecka 5: Avancerade tekniker för datapersistens
- Kärndata och SQLite (iOS)
- Avancerade kärndatarelationer, hämtning och frågor
- Använda SQLite direkt för iOS appar och hantera databasanslutningar
- Effektiv datahantering och optimering
- Rumsbeständighet och SQLite (Android)
- Avancerade rumsdatabasrelationer och frågor
- Hantera stora datamängder och optimera databasprestanda
- Använda ProGuard för att säkra databasstrukturer
- Firebase för molnlagring (iOS och Android)
- Integration med Firebase för databashantering i realtid
- Metodtips för synkronisering av lokala data och molndata
Vecka 6: Avancerat tillstånd Management hos React Native
- Redux för delstat Management
- Avancerade Redux koncept: Middlewares, Thunks och Sagas
- Optimera Redux för prestanda och skalbarhet
- Rekyl för tillstånd Management
- Introduktion till Recoil: Ett mer flexibelt alternativ till Redux
- Hantera storskalig tillståndshantering mellan komponenter
- Effektiva tillståndsuppdateringar och hantering av atomtillstånd
Vecka 7: Avancerad Animations i iOS och Android
- iOS (Swift)
- Kärna Animation: Animera vyer, lager och övergångar
- UIKit Dynamics: Skapa fysikbaserade animationer
- Anpassade övergångar och animeringar mellan vykontroller
- Android (Kotlin)
- MotionLayout för att skapa komplexa animeringar
- TransitionManager och övergångar mellan delade element
- Egenskapsanimeringar för vyskalning, rotation och alfaändringar
Vecka 8: Animations och UI/UX i React Native
- React Infödda Animations
- Använda Animated API och Reanimated för komplexa animeringar
- Implementera gester och interaktioner med hjälp av React Native Gesture Handler
- Metodtips för presterande animeringar i React Native
- Skapa anpassade gränssnittskomponenter
- Skapa återanvändbara och anpassningsbara komponenter i React Native
- Implementera responsiv design med mediafrågor och flexbox
Vecka 9: Integrera inbyggda moduler och enhetsfunktioner
- Accessing inbyggda enhetsfunktioner
- Avancerad användning av kameran, geolokalisering, Bluetooth och sensorer
- Skapa inbyggda moduler i Swift och Kotlin för React Inbyggd integration
- Integrera ARKit för förstärkt verklighet i iOS
- Integrera CameraX och ARCore för förstärkt verklighet i Android
- React Inbyggd brygga och inbyggda moduler
- Skapa anpassade inbyggda moduler för att integrera med plattformsspecifika funktioner
- Skapa Java- och Swift-bryggor för React inbyggda appar
- Metodtips för att hantera inbyggd kod i en plattformsoberoende miljö
Vecka 10: Testa och felsöka avancerade appar
- Testning i iOS (Swift)
- Skriva enhetstester med XCTest och UI-tester för iOS
- Använda Xcode Instruments för prestandaprofilering och minnesläckor
- Arbetsflöden för kontinuerlig integration och testning med Jenkins och CircleCI
- Testning i Android (Kotlin)
- Avancerad JUnit- och espressotestning för Android appar
- Profilering av prestanda och identifiering av flaskhalsar med hjälp av Android Profiler
- Använda Firebase Test Lab för automatiserad testning på flera enheter
- React Inbyggd testning
- Enhetstestning med Jest och komponenttestning med Enzyme
- End-to-end-testning med Detox och automatiserade testinställningar
- Prestandaprofilering med hjälp av React Native Debugger och Flipper
Vecka 11: Appdistribution och kontinuerlig integrering
- Distribution av App Store (iOS)
- Förbereda din app för inlämning: App Store-certifikat, provisioneringsprofiler och TestFlight betatestning
- Använda Fastlane för att automatisera iOS appdistribution
- Hantera App Store Connect och ställa in appgranskningsprocesser
- GoUtplacering av ogle Play (Android)
- Förbereda APK-filen och signera den för att skicka in den till Google Play
- Automatisera Android appdistribution med Fastlane och Gradle
- Använda Google Play Console för appgranskning och betatestning
- Konfigurera CI/CD-pipelines
- Konfigurera Jenkins, GitHub åtgärder eller CircleCI för automatiserade bygg- och distributionspipelines
- Använda Fastlane för både iOS och Android CI/CD-arbetsflöden
- Metodtips för hantering av versionshantering, versionsnummer och versionskanaler
Vecka 12: Capstone-projektet
- Slutlig projektutveckling
- Designa och utveckla en fullt fungerande app som innehåller avancerade funktioner som lärts in under hela kursen.
- Implementera anpassat UI/UX, avancerade animeringar, tillståndshantering, inbyggd modulintegration och API-kommunikation i realtid.
- Optimera appen för prestanda och distribuera den till App Store och Gogogo Play.
Sammanfattning och nästa steg
Krav
- Gedigen förståelse för programmeringskoncept, särskilt i Swift, Kotlin och JavaScript
- Tidigare erfarenhet av att skapa grundläggande iOS, Android eller React inbyggda appar
- Kunskap om designmönster som MVC eller MVVM och erfarenhet av grundläggande tillståndshantering
Publik
- Mobila utvecklare
- Programmerare
Vittnesmål (5)
Very usefull additional informations
Grzegorz - Comp S.A.
Kurs - BLoC Pattern
Utveckla användarautentiseringsappen och Kahoots-aktivitet (jag har verkligen försäkrat mig om att jag absorberar träningsföreläsningarna :) och det är roligt!)
Jhoanne - Pag-IBIG Fund
Kurs - .NET MAUI Fundamentals
Machine Translated
Edward är en fantastisk facilitator
Zibusiso Ncube - Agricatural Research Council
Kurs - Ionic 4 and Angular for Developers
Machine Translated
Kanske kunde fler övningar vara bättre för lerning men tiden var för lite
Gianpiero Arico' - Urmet Spa
Kurs - 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.