Schița de curs

Introducere

Săptămâna 1: Prezentare generală a Mobile Development

  • Ecosistemul și platformele mobile
    • Prezentare generală a sistemelor de operare mobile (iOS și Android)
    • Principalele diferențe dintre iOS, Android și dezvoltarea multiplatformă
    • Magazine de aplicații populare (Apple App Store, Google Play Store)
    • Introducere în dezvoltarea nativă, hibridă și multiplatformă
  • Nativ vs hibrid vs multiplatformă
    • Avantaje și provocări ale fiecărei metode de dezvoltare
    • Prezentare generală a Swift (pentru iOS), Kotlin (pentru Android) și React Native (cross-platform)
    • Cum se transpune codul pe platformele mobile (JavaScript către codul nativ în React Native)
  • Programming Noțiuni fundamentale
    • Introducere în conceptele de programare (variabile, tipuri de date, funcții, flux de control)
    • Compararea sintaxei Swift, Kotlin și JavaScript
    • Scrierea de programe simple folosind Swift, Kotlin și JavaScript
  • Configurarea mediilor de dezvoltare
    • Instalarea Xcode și Android Studio
    • Configurarea React Native CLI și Expo
    • Rularea aplicațiilor de bază "Hello World" pe simulatoare și emulatoare

Săptămâna 2: Introducere în Swift, Kotlin și JavaScript

  • Swift Programming pentru iOS
    • Variabile, constante și tipuri de date în Swift
    • Instrucțiuni privind fluxul de control(if, switch, bucle)
    • Funcții și parametri în Swift
    • Introducere în interfața Xcode și Swift Playgrounds
  • Kotlin Programming pentru Android
    • Variabile, tipuri de date și funcții în Kotlin
    • Înțelegerea siguranței null din Kotlin
    • Fluxul de control și structurile buclelor
    • Introducere în interfața Android Studio și Kotlin Playground
  • JavaScript pentru React nativ
    • Variabilele, constantele și fluxul de control în JavaScript
    • Caracteristici ES6: funcții săgeată, literale șablon și destructurare
    • Scrierea și rularea programelor JavaScript de bază în React Native utilizând Expo

Săptămâna 3: iOS Proiectarea interfeței utilizator

  • UI Elements în iOS
    • Introducere în UIKit și SwiftUI
    • Adăugarea și personalizarea elementelor de interfață, cum ar fi butoanele, etichetele și câmpurile text
    • Utilizarea Interface Builder pentru proiectarea interfeței de utilizator
    • Lucrul cu Storyboard-uri și proiectarea de interfețe utilizator pe mai multe ecrane
  • Auto Layout și constrângeri
    • Înțelegerea sistemului Auto Layout
    • Utilizarea constrângerilor pentru layout-uri receptive pe diferite dimensiuni de ecran
    • Crearea de vizualizări stivuite și ajustarea dinamică a elementelor de interfață de utilizator
  • SwiftBazele IU
    • Introducere în proiectarea declarativă a IU în SwiftUI
    • Construirea de componente simple ale interfeței de utilizator utilizând SwiftUI

Săptămâna 4: Android Proiectarea interfeței utilizator

  • XML Layouts în Android
    • Introducere în proiectarea layout-urilor pe baza XML-ului
    • Lucrul cu layout-uri comune: LinearLayout, RelativeLayout, ConstraintLayout
    • Adăugarea și personalizarea elementelor UI: butoane, vizualizări text, vizualizări imagine
    • Utilizarea ConstraintLayout pentru layout-uri receptive și dinamice
  • Design material
    • Integrarea principiilor Material Design (culori, pictograme, tipografie)
    • Utilizarea componentelor Material (butoane, butoane de acțiune plutitoare, carduri)
    • Implementarea de teme și stiluri pentru aplicațiile Android

Săptămâna 5: React Design nativ al interfeței cu utilizatorul

  • React Layout Flexbox nativ
    • Înțelegerea Flexbox pentru proiectarea layout-urilor receptive
    • Crearea layout-urilor bazate pe coloane și rânduri
    • Stilizarea componentelor UI cu proprietăți Flexbox (justifyContent, alignItems etc.)
  • React Componente native
    • Lucrul cu componente de bază precum Text, View, TextInput și Button
    • Crearea de elemente interactive de interfață, cum ar fi formularele și butoanele
    • Utilizarea componentei ScrollView pentru conținut dinamic

Săptămâna 6: Manipularea datelor în iOS și Android

  • iOS Manipularea datelor
    • Utilizarea UserDefaults pentru persistența datelor simple
    • Introducere în Core Data pentru stocarea locală a datelor complexe
    • Obținerea de date de la API-uri utilizând URLSession
    • Parsarea datelor JSON și afișarea lor în interfața utilizator
  • Android Gestionarea datelor
    • Utilizarea SharedPreferences pentru stocarea unor cantități mici de date
    • Introducere în SQLite și Room Persistence Library pentru gestionarea bazelor de date
    • Obținerea de date din API-uri utilizând Retrofit
    • Parsarea JSON și gestionarea răspunsurilor API

Săptămâna 7: React Stare nativă Management și API-uri

  • State și Props în React Native
    • Gestionarea fluxului de date în cadrul componentelor React Native
    • Utilizarea cârligului useState pentru gestionarea stării componentelor locale
    • Transmiterea datelor între componentele părinte și copil prin intermediul props-urilor
  • Obținerea de date în React Native
    • Utilizarea API Fetch și Axios pentru a efectua cereri HTTP
    • Afișarea datelor preluate în liste (utilizând FlatList, SectionList)
    • Persistarea datelor la nivel local utilizând AsyncStorage în React Native

Săptămâna 8: Navigarea în iOS și Android

  • iOS Navigație
    • Introducere în controlorii de navigare și gestionarea ecranelor multiple
    • Utilizarea secvențelor pentru tranziția între controlorii de vizualizare
    • Transmiterea datelor între controlorii de vizualizare
    • Implementarea TabBar și NavigationBar pentru navigarea structurată
  • Android Navigație
    • Lucrul cu Activities și Intents pentru aplicații cu mai multe ecrane
    • Transmiterea datelor între Activities utilizând Bundles
    • Crearea unui sertar de navigare și a unui BottomNavigationView
    • Implementarea fragmentelor pentru o navigare flexibilă în interfața de utilizator

Săptămâna 9: Navigarea în React nativ

  • Bazele navigației React
    • Instalarea și configurarea React Navigation
    • Utilizarea Stack Navigator pentru tranzițiile de ecran
    • Implementarea Tab Navigator și Drawer Navigator pentru navigarea complexă
    • Transmiterea parametrilor între ecrane și gestionarea stării de navigare

Săptămâna 10: Funcții avansate

  • iOS Caracteristici avansate:
    • Core location și hărți
      • Access localizarea dispozitivului cu Core Location
      • Afișarea hărților utilizând MapKit
      • Gestionarea geolocalizării și urmărirea locației utilizatorului
    • Cameră foto și media
      • Accessng camera dispozitivului și biblioteca foto
      • Captarea și afișarea imaginilor cu UIImagePickerController
      • Stocarea și extragerea fișierelor media
  • Android Caracteristici avansate
    • Locație și hărți
      • Utilizarea API Google Maps pentru afișarea hărților și a locației utilizatorului
      • Accessingerea datelor GPS și gestionarea geolocației
    • Aparat foto și media
      • Utilizarea CameraX pentru capturarea fotografiilor și gestionarea permisiunilor camerei
      • Afișarea imaginilor și gestionarea stocării media
  • React Caracteristici avansate native
    • React Hărți native
      • Integrarea hărților utilizând react-native-maps
      • Gestionarea serviciilor bazate pe locație (geolocalizare, trasarea rutelor)
    • Camera foto și accesul la media
      • Utilizarea bibliotecii React Native Camera pentru capturarea fotografiilor
      • Stocarea media pe dispozitiv Accessing și gestionarea fișierelor

Săptămâna 11: Debugging și testare

  • iOS Depanare și testare
    • Utilizarea depanatorului Xcode
      • Setarea punctelor de întrerupere și inspectarea variabilelor în Xcode
      • Utilizarea consolei pentru depanare în timp real
      • Probleme comune de depanare și modul de rezolvare a acestora
    • Testarea unitară în iOS
      • Scrierea și rularea testelor unitare utilizând cadrul XCTest
      • Simularea obiectelor și testarea componentelor interfeței utilizator
  • Android Depanare și testare
    • Utilizarea Logcat în Android Studio
      • Înregistrarea și analizarea erorilor utilizând Logcat
      • Depanarea aplicațiilor Android cu ajutorul punctelor de întrerupere
    • Testarea unitară în Android
      • Scrierea testelor unitare utilizând JUnit
      • Testarea componentelor Android UI cu Espresso
  • React Depanare și testare nativă
    • React Instrumente de depanare nativă
      • Utilizarea Chrome DevTools și React Native Debugger pentru depanare în timp real
      • Jurnalele consolei și inspectarea cererilor de rețea
    • Testarea unitară în React Native
      • Scrierea testelor unitare utilizând Jest și Enzyme
      • Testarea componentelor React Native și gestionarea cazurilor de testare

Săptămâna 12: Implementarea aplicației și proiectul Capstone

  • Implementare și distribuție
    • iOS Trimiterea către App Store
      • Pregătirea aplicației pentru distribuție (pictograme, certificate, profiluri de furnizare)
      • Utilizarea App Store Connect pentru trimiterea aplicației pentru revizuire
      • Utilizarea TestFlight pentru testarea beta
    • Android Trimiterea către Play Store
      • Pregătirea APK și semnarea aplicației pentru distribuție
      • Utilizarea Google Play Console pentru trimiterea și urmărirea aplicațiilor
      • Înțelegerea politicilor și orientărilor Play Store
  • Dezvoltarea proiectului Capstone
    • Dezvoltarea proiectului final
      • Crearea unei aplicații complet funcționale la alegerea dvs.
      • Încorporarea unor caracteristici avansate precum apeluri API, navigare, media și locație
      • Prezentarea și demonstrarea aplicației finale colegilor și instructorilor

Rezumat și pași următori

Cerințe

  • Înțelegere de bază a conceptelor de programare
  • Cunoștințe de bază de JavaScript

Audiență

  • Dezvoltatori de telefoane mobile
  • Programatori
 420 ore

Numărul de participanți


Pret per participant

Mărturii (5)

Upcoming Courses

Categorii înrudite