Cursusaanbod
Introductie
Week 1: Geavanceerde Swift, Kotlin en JavaScriptconcepten
- Swift (iOS)
- Geavanceerde functies: Sluitingen, vastleggen van waarden, hogere-orde functies
- Protocolgeoriënteerd programmeren en generics
- Geheugenbeheer met ARC (Automatic Reference Counting)
- Kotlin (Android)
- Uitbreidingsfuncties en Kotlin Standaardbibliotheek
- Coroutines voor asynchroon programmeren
- Verzegelde klassen, enums en geavanceerde foutafhandeling
- Java Schrift (React Inheems)
- Geavanceerde ES6+-functies: Destructuring, async/async, beloften
- Functionele programmeerconcepten in JavaScript
- Werken met bibliotheken van derden in React Native
Week 2: Mobiele app-architectuur en Design Patterns
- MVVM (Model-View-ViewModel) voor iOS en Android
- Inzicht in MVVM-architectuur voor iOS (Swift) en Android (Kotlin)
- Implementeren van ViewModels en waarnemen van data met LiveData (Android) en Combine (iOS)
- Reactive programmeren met RxSwift en RxKotlin
- Architectuur op basis van componenten in React Native
- Inzicht in de levenscycli en haken van componenten
- Best practices voor het beheren van status en rekwisieten op schaal
- React Context-API gebruiken voor wereldwijd statusbeheer
Week 3: Concepten voor gevorderden Networking
- Networking in iOS (Swift)
- Werken met URLSession voor aangepaste netwerkaanvragen
- Geavanceerde REST API-aanroepen en foutafhandeling
- Werken met Codable en JSON parsing
- Best practices voor veilige API-communicatie (SSL-pinning, OAuth)
- Networking in Android (Kotlin)
- Retrofit voor het maken van API-aanroepen en het afhandelen van reacties
- Geavanceerde API-foutafhandeling en mechanismen voor opnieuw proberen
- Gson of Moshi gebruiken voor JSON-parseren
- Veilige communicatie met behulp van HTTPS- en OAuth-verificatie
Week 4: Networking in React Inheems
- API-integratie met Axios en Fetch
- Geavanceerde API-integratie met Axios en Fetch
- Strategieën voor foutafhandeling en nieuwe pogingen in netwerkaanvragen
- Werken met authenticatie (JWT, OAuth)
- WebSockets en real-time Communication
- Inleiding tot WebSockets in React Native
- Real-time chat- of meldingsfuncties bouwen met WebSocket-verbindingen
- Permanente verbindingen en gegevensupdates beheren
Week 5: Geavanceerde technieken voor gegevenspersistentie
- Kerngegevens en SQLite (iOS)
- Geavanceerde relaties met kerngegevens, ophalen en query's
- SQLite rechtstreeks gebruiken voor iOS apps en databaseverbindingen beheren
- Efficiënte gegevensverwerking en -optimalisatie
- Persistentie in de kamer en SQLite (Android)
- Geavanceerde relaties en query's in de ruimtedatabase
- Het beheren van grote datasets en het optimaliseren van databaseprestaties
- ProGuard gebruiken voor het beveiligen van databasestructuren
- Firebase Voor cloudopslag (iOS en Android)
- Integratie met Firebase voor real-time databasebeheer
- Aanbevolen procedures voor het synchroniseren van lokale en cloudgegevens
Week 6: Geavanceerde staat Management in React Inheems
- Redux Voor de staat. Management
- Geavanceerde Redux concepten: middlewares, thunks en saga's
- Optimaliseren Redux voor prestaties en schaalbaarheid
- Terugslag voor Staat Management
- Inleiding tot terugslag: een flexibeler alternatief voor Redux
- Omgaan met grootschalig statusbeheer voor verschillende componenten
- Efficiënte statusupdates en atomair toestandsbeheer
Week 7: Gevorderden Animations in iOS en Android
- iOS (Swift)
- Kern Animation: Aanzichten, lagen en overgangen animeren
- UIKit Dynamics: op fysica gebaseerde animaties maken
- Aangepaste overgangen en animaties tussen weergavecontrollers
- Android (Kotlin)
- MotionLayout voor het maken van complexe animaties
- Overgangen van TransitionManager en gedeelde elementen
- Eigenschapsanimaties voor het schalen, roteren en wijzigen van alfa
Week 8: Animations en UI/UX in React Native
- React Inheems Animations
- De geanimeerde API en Reanimated gebruiken voor complexe animaties
- Gebaren en interacties implementeren met behulp van React Native Gesture Handler
- Effectieve methoden voor performante animaties in React Native
- Aangepaste UI-componenten maken
- Herbruikbare en aanpasbare componenten bouwen in React Native
- Implementeren van responsive designs met media queries en flexbox
Week 9: Integratie van native modules en apparaatfuncties
- Accessing Native apparaatfuncties
- Geavanceerd gebruik van de camera, geolocatie, Bluetooth en sensoren
- Native modules maken in Swift en Kotlin voor React Native integratie
- Integratie van ARKit voor augmented reality in iOS
- Integratie van CameraX en ARCore voor augmented reality in Android
- React Native Bridge en Native modules.
- Aangepaste native modules bouwen om te integreren met platformspecifieke functionaliteit
- Java en Swift bruggen maken voor React Native apps
- Best practices voor het beheren van native code in een platformonafhankelijke omgeving
Week 10: Geavanceerde apps testen en debuggen
- Testen in iOS (Swift)
- Eenheidstests schrijven met XCTest en UI-tests voor iOS
- Xcode Instruments gebruiken voor prestatieprofilering en geheugenlekken
- Continue integratie en testworkflows met Jenkins en CircleCI
- Testen in Android (Kotlin)
- Geavanceerde JUnit- en espressotests voor Android-apps
- Prestaties profileren en knelpunten identificeren met behulp van Android Profiler
- Gebruik van Firebase Test Lab voor geautomatiseerd testen op meerdere apparaten
- React Native testen
- Eenheidstesten met Jest en componenttesten met enzymen
- End-to-end testen met behulp van Detox en geautomatiseerde testopstellingen
- Prestatieprofilering met behulp van React Native Debugger en Flipper
Week 11: App-implementatie en continue integratie
- Implementatie in de App Store (iOS)
- Uw app voorbereiden op indiening: App Store-certificaten, inrichtingsprofielen en testtesttests
- Fastlane gebruiken voor het automatiseren van iOS app-implementatie
- App Store Connect beheren en app-beoordelingsprocessen instellen
- Google Play (Android) Implementatie
- De APK voorbereiden en ondertekenen voor Google Play-inzending
- App-implementatie automatiseren Android met Fastlane en Gradle
- GoOgle Play Console gebruiken voor app-beoordeling en bètatests
- CI/CD-pijplijnen instellen
- Configureren Jenkins, GitHub Actions of CircleCI voor geautomatiseerde build- en implementatiepijplijnen
- Fastlane gebruiken voor zowel iOS als Android CI/CD-workflows
- Best practices voor het omgaan met versiebeheer, buildnummers en releasekanalen
Week 12: Capstone-project
- Eindontwikkeling van het project
- Ontwerp en ontwikkel een volledig functionele app met geavanceerde functies die tijdens de cursus zijn geleerd.
- Implementeer aangepaste UI/UX, geavanceerde animaties, statusbeheer, native module-integratie en realtime API-communicatie.
- Optimaliseer de app voor prestaties en implementeer deze in de App Store en Google Play.
Samenvatting en volgende stappen
Vereisten
- Gedegen kennis van programmeerconcepten, met name in Swift, Kotlin en JavaScript
- Eerdere ervaring met het bouwen van eenvoudige iOS, Android of React native apps
- Kennis van design patterns zoals MVC of MVVM en ervaring met basis state management
Audiëntie
- Mobiele ontwikkelaars
- Programmeurs
Testimonials (5)
Edward is een geweldige facilitator
Zibusiso Ncube - Agricatural Research Council
Cursus - Ionic 4 and Angular for Developers
Automatisch vertaald
Mijn favoriete onderdeel is vraag en antwoord met meneer Jose. Hij is zeer deskundig en weet het antwoord op onze vragen.
John Henry - Toyota Motor Philippines
Cursus - .NET MAUI (Intermediate)
Automatisch vertaald
Misschien zou meer oefening beter kunnen zijn voor lerning, maar de tijd was te weinig
Gianpiero Arico' - Urmet Spa
Cursus - Embedded Linux Systems Architecture
Automatisch vertaald
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
Cursus - Flutter Development Bootcamp with Dart
The trainer was enthusiastic, kind, and loved the topic