Intrati in legatura

Schița de curs

Introducere

Săptămâna 1: Concepte Avansate Swift, Kotlin și JavaScript

  • Swift (iOS)
    • Funcții avansate: Închideri, capturare de valori, funcții de ordin înalt
    • Programare orientată pe protocoale și generice
    • Gestionarea memoriei cu ARC (Automatic Reference Counting)
  • Kotlin (Android)
    • Funcții de extensie și Kotlin Standard Library
    • Corutine pentru programare asincronă
    • Clase sigilate, enumerări și gestionare avansată a erorilor
  • JavaScript (React Native)
    • Funcționalități avansate ES6+: Destructurare, async/await, promisiuni
    • Concepte de programare funcțională în JavaScript
    • Lucrul cu biblioteci terțe în React Native

Săptămâna 2: Arhitectura Aplicațiilor Mobile și Modele de Design

  • MVVM (Model-View-ViewModel) pentru iOS și Android
    • Înțelegerea arhitecturii MVVM pentru iOS (Swift) și Android (Kotlin)
    • Implementarea ViewModels și observarea datelor cu LiveData (Android) și Combine (iOS)
    • Programare reactivă cu RxSwift și RxKotlin
  • Arhitectura Bazată pe Componente în React Native
    • Înțelegerea ciclurilor de viață ale componentelor și a hook-urilor
    • Bune practici pentru gestionarea stării și a props-urilor la scară mare
    • Folosirea React Context API pentru gestionarea globală a stării

Săptămâna 3: Concepte Avansate de Rețea

  • Rețea în iOS (Swift)
    • Lucrul cu URLSession pentru cereri de rețea personalizate
    • Apeluri avansate la API-uri REST și gestionarea erorilor
    • Lucrul cu Codable și parsarea JSON
    • Bune practici pentru comunicarea sigură a API-urilor (SSL pinning, OAuth)
  • Rețea în Android (Kotlin)
    • Retrofit pentru efectuarea de apeluri API și gestionarea răspunsurilor
    • Gestionare avansată a erorilor API și mecanisme de reîncercare
    • Folosirea Gson sau Moshi pentru parsarea JSON
    • Comunicare sigură folosind HTTPS și autentificare OAuth

Săptămâna 4: Rețea în React Native

  • Integrare API cu Axios și Fetch
    • Integrare avansată a API-urilor cu Axios și Fetch
    • Strategii de gestionare a erorilor și reîncercări în cererile de rețea
    • Lucrul cu autentificare (JWT, OAuth)
  • WebSockets și Comunicare în Timp Real
    • Introducere în WebSockets în React Native
    • Construirea de funcții de chat sau notificări în timp real cu conexiuni WebSocket
    • Gestionarea conexiunilor persistente și actualizări de date

Săptămâna 5: Tehnici Avansate de Persistență a Datelor

  • Core Data și SQLite (iOS)
    • Relații avansate în Core Data, interogări și preluări
    • Folosirea directă a SQLite pentru aplicații iOS și gestionarea conexiunilor la baze de date
    • Gestionarea eficientă a datelor și optimizare
  • Room Persistence și SQLite (Android)
    • Relații avansate în baze de date Room și interogări
    • Gestionarea seturilor mari de date și optimizarea performanței bazei de date
    • Folosirea ProGuard pentru securizarea structurilor de date
  • Firebase pentru Stocare în Cloud (iOS și Android)
    • Integrare cu Firebase pentru gestionarea bazelor de date în timp real
    • Bune practici pentru sincronizarea datelor locale și din cloud

Săptămâna 6: Gestionare Avansată a Stării în React Native

  • Redux pentru Gestionarea Stării
    • Concepte avansate Redux: Middlewares, Thunks și Sagas
    • Optimizarea Redux pentru performanță și scalabilitate
  • Recoil pentru Gestionarea Stării
    • Introducere în Recoil: O alternativă mai flexibilă la Redux
    • Gestionarea stării la scară mare pe componente
    • Actualizări eficiente ale stării și gestionare atomică a stării

Săptămâna 7: Animații Avansate în iOS și Android

  • iOS (Swift)
    • Core Animation: Animații pentru vizualizări, straturi și tranziții
    • UIKit Dynamics: Crearea de animații bazate pe fizică
    • Tranziții și animații personalizate între controlere de vizualizare
  • Android (Kotlin)
    • MotionLayout pentru crearea de animații complexe
    • TransitionManager și tranziții de elemente partajate
    • Animații de proprietate pentru scalare, rotație și modificări de transparență

Săptămâna 8: Animații și UI/UX în React Native

  • Animații în React Native
    • Folosirea Animated API și Reanimated pentru animații complexe
    • Implementarea gesturilor și interacțiunilor folosind React Native Gesture Handler
    • Bune practici pentru animații performante în React Native
  • Crearea de Componente UI Personalizate
    • Construirea de componente reutilizabile și personalizabile în React Native
    • Implementarea de designuri responsive cu media queries și flexbox

Săptămâna 9: Integrarea Modulelor Native și Funcționalităților Dispozitivelor

  • Accesarea Funcționalităților Native ale Dispozitivelor
    • Folosirea avansată a camerei, geolocației, Bluetooth și senzorilor
    • Crearea de module native în Swift și Kotlin pentru integrare în React Native
    • Integrarea ARKit pentru realitate augmentată în iOS
    • Integrarea CameraX și ARCore pentru realitate augmentată în Android
  • React Native Bridge și Module Native
    • Construirea de module native personalizate pentru integrarea cu funcționalități specifice platformei
    • Crearea de punți Java și Swift pentru aplicații React Native
    • Bune practici pentru gestionarea codului native într-un mediu cross-platform

Săptămâna 10: Testarea și Depanarea Aplicațiilor Avansate

  • Testarea în iOS (Swift)
    • Scrierea de teste unitare cu XCTest și teste UI pentru iOS
    • Folosirea Xcode Instruments pentru profilarea performanței și detectarea scurgerilor de memorie
    • Integrare continuă și fluxuri de testare cu Jenkins și CircleCI
  • Testarea în Android (Kotlin)
    • Teste JUnit și Espresso avansate pentru aplicații Android
    • Profilarea performanței și identificarea punctelor de blocare folosind Android Profiler
    • Folosirea Firebase Test Lab pentru testarea automată pe mai multe dispozitive
  • Testarea React Native
    • Teste unitare cu Jest și teste de componente cu Enzyme
    • Testare end-to-end folosind Detox și setări automate de teste
    • Profilarea performanței folosind React Native Debugger și Flipper

Săptămâna 11: Lansarea Aplicațiilor și Integrare Continuă

  • Lansare pe App Store (iOS)
    • Pregătirea aplicației pentru trimitere: certificate App Store, profile de provisioning și testare beta cu TestFlight
    • Folosirea Fastlane pentru automatizarea lansării aplicațiilor iOS
    • Gestionarea App Store Connect și setarea proceselor de revizuire a aplicațiilor
  • Lansare pe Google Play (Android)
    • Pregătirea APK-ului și semnarea acestuia pentru trimiterea pe Google Play
    • Automatizarea lansării aplicațiilor Android cu Fastlane și Gradle
    • Folosirea Google Play Console pentru revizuirea aplicațiilor și testarea beta
  • Setarea Pipeline-urilor CI/CD
    • Configurarea Jenkins, GitHub Actions sau CircleCI pentru fluxuri automate de construcție și lansare
    • Folosirea Fastlane pentru fluxuri de lucru CI/CD atât pentru iOS cât și pentru Android
    • Bune practici pentru gestionarea versiunilor, numerelor de build și canalelor de lansare

Săptămâna 12: Proiect Capstone

  • Dezvoltarea Proiectului Final
    • Proiectează și dezvoltă o aplicație complet funcțională care să includă funcționalități avansate învățate pe parcursul cursului.
    • Implementează interfețe UI/UX personalizate, animații avansate, gestionarea stării, integrarea modulelor native și comunicare API în timp real.
    • Optimizează aplicația pentru performanță și lansează-o pe App Store și Google Play.

Rezumat și Pași Următori

Cerințe

  • Înțelegere solidă a conceptelor de programare, în special în Swift, Kotlin și JavaScript
  • Experiență anterioară în construirea de aplicații de bază iOS, Android sau React Native
  • Cunoștințe despre modele de design precum MVC sau MVVM și experiență cu gestionarea de bază a stării

Publicul Țintă

  • Dezvoltatori de aplicații mobile
  • Programatori
 420 Ore

Numărul de participanți


Pret per participant

Mărturii (4)

Cursuri viitoare

Categorii înrudite