- Solidne zrozumienie koncepcji programowania, w szczególności w Swift, Kotlin i Java Script.
- Wcześniejsze doświadczenie w tworzeniu podstawowych iOS, Android lub React aplikacji natywnych
- Znajomość wzorców projektowych, takich jak MVC lub MVVM oraz doświadczenie z podstawowym zarządzaniem stanem.
Publiczność
- Programiści mobilni
- Programiści
Rozwój iOS koncentruje się na tworzeniu aplikacji specjalnie dla urządzeń Apple (iPhone'ów i iPadów) przy użyciu Swift/Objective-C i Xcode, rozwój Android obejmuje tworzenie aplikacji dla urządzeń Android przy użyciu Kotlin/Java i Android Studio, a rozwój React Native to wieloplatformowa platforma, która umożliwia tworzenie aplikacji zarówno dla iOS, jak i Android przy użyciu JavaScript, ze współdzielonymi bazami kodu, wykorzystując bibliotekę React do tworzenia interfejsu użytkownika.
Szkolenie na żywo prowadzone przez instruktora (na miejscu lub zdalnie) jest przeznaczone dla zaawansowanych programistów, którzy chcą nauczyć się zaawansowanych technik programowania w Swift, Kotlin i JavaScript, wdrażać skalowalne architektury i tworzyć bogate w funkcje aplikacje z bezpieczną integracją API, komunikacją w czasie rzeczywistym i zaawansowanym UI/UX.
Pod koniec tego szkolenia uczestnicy będą mogli:
- Opanować zaawansowane Programming techniki w Swift, Kotlin i JavaScript, w tym zamknięcia, coroutines i async/await.
- Projektować Scalable architektury aplikacji mobilnych przy użyciu MVVM dla iOS/Android i zaawansowanego zarządzania stanem w React Native.
- Tworzenie bogatych w funkcje aplikacji mobilnych z bezpieczną integracją API, komunikacją w czasie rzeczywistym i zaawansowaną obsługą danych (Core Data, SQL ite, Room, Firebase).
- Integruj natywne funkcje urządzeń, takie jak kamera, geolokalizacja i czujniki, oraz twórz niestandardowe natywne moduły w React Native.
- Tworzenie zaawansowanego UI/UX za pomocą Animation i komponentów wielokrotnego użytku dla responsywnych, wysoce interaktywnych doświadczeń mobilnych.
- Testowanie, debugowanie i optymalizacja aplikacji pod kątem wydajności i niezawodności przy użyciu Xcode, Android Profiler i React Native Debugger.
- Wdrażanie aplikacji przy użyciu potoków CI/CD do ciągłej integracji i zautomatyzowanych wydań w App Store i Google Play.
- Ukończenie projektu Capstone, opracowanie i wdrożenie gotowej do produkcji aplikacji do sklepów z aplikacjami.
Format kursu
- Interaktywny wykład i dyskusja.
- Wiele ćwiczeń i praktyki.
- Praktyczne wdrożenie w środowisku laboratoryjnym na żywo.
Opcje dostosowywania kursu
- Aby poprosić o spersonalizowane szkolenie dla tego kursu, skontaktuj się z nami w celu ustalenia szczegółów.
Wprowadzenie
Tydzień 1: Zaawansowane Swift, Kotlin i Java koncepcje skryptów
- Swift (iOS)
- Zaawansowane funkcje: Zamknięcia, przechwytywanie wartości, funkcje wyższego rzędu
- Programowanie zorientowane na protokoły i generyczne
- Zarządzanie pamięcią za pomocą ARC (Automatic Reference Counting)
- Kotlin (Android)
- Funkcje rozszerzające i biblioteka standardowa Kotlin
- Coroutines dla programowania asynchronicznego
- Zamknięte klasy, wyliczenia i zaawansowana obsługa błędów
- Java Script (React Native)
- Zaawansowane funkcje ES6+: Destrukturyzacja, async/await, obietnice
- Koncepcje programowania funkcjonalnego w JavaScript
- Praca z bibliotekami innych firm w React Native
Tydzień 2: Architektura aplikacji mobilnych i Design Patterns
- MVVM (Model-View-ViewModel) dla iOS i Android
- Zrozumienie architektury MVVM dla iOS (Swift) i Android (Kotlin)
- Wdrażanie ViewModels i obserwowanie danych za pomocą LiveData (Android) i Combine (iOS)
- Programowanie React ive z RxSwift i RxKotlin
- Architektura oparta na komponentach w React Native
- Zrozumienie cykli życia komponentów i haków
- Najlepsze praktyki zarządzania stanem i rekwizytami na dużą skalę
- Używanie React Context API do globalnego zarządzania stanem
Tydzień 3: Zaawansowane koncepcje Networking
- Networking w iOS (Swift)
- Praca z URLSession dla niestandardowych żądań sieciowych
- Zaawansowane wywołania REST API i obsługa błędów
- Praca z Codable i parsowanie JSON
- Najlepsze praktyki bezpiecznej komunikacji API (SSL pinning, OAuth)
- Networking w Android (Kotlin)
- Retrofit do wykonywania wywołań API i obsługi odpowiedzi
- Zaawansowana obsługa błędów API i mechanizmy ponawiania
- Używanie Gson lub Moshi do parsowania JSON
- Bezpieczna komunikacja przy użyciu HTTPS i uwierzytelniania OAuth
Tydzień 4: Networking w React Native
- Integracja API z Axios i Fetch
- Zaawansowana integracja API z Axios i Fetch
- Strategie obsługi błędów i ponawianie żądań sieciowych
- Praca z uwierzytelnianiem (JWT, OAuth)
- WebSockets i czas rzeczywisty Communication
- Wprowadzenie do WebSockets w React Native
- Tworzenie funkcji czatu lub powiadomień w czasie rzeczywistym za pomocą połączeń WebSocket
- Zarządzanie trwałymi połączeniami i aktualizacjami danych
Tydzień 5: Zaawansowane techniki trwałości danych
- Core Data i SQLite (iOS)
- Zaawansowane relacje, pobieranie i zapytania Core Data
- Używanie SQLite bezpośrednio w aplikacjach iOS i zarządzanie połączeniami z bazą danych
- Wydajna obsługa i optymalizacja danych
- Room Persistence i SQLite (Android)
- Zaawansowane relacje i zapytania w bazie danych Room
- Zarządzanie dużymi zbiorami danych i optymalizacja wydajności bazy danych
- Używanie ProGuard do zabezpieczania struktur baz danych
- Firebase dla Cloud Storage (iOS i Android)
- Integracja z Firebase do zarządzania bazą danych w czasie rzeczywistym
- Najlepsze praktyki synchronizacji danych lokalnych i w chmurze
Tydzień 6: Zaawansowany Stan Management w React Natywny
- Redux dla State Management
- Zaawansowane koncepcje Redux: Middlewares, Thunks i Sagas
- Optymalizacja Redux pod kątem wydajności i skalowalności
- Recoil dla State Management
- Wprowadzenie do Recoil: Bardziej elastyczna alternatywa dla Redux
- Obsługa zarządzania stanem na dużą skalę między komponentami
- Wydajne aktualizacje stanu i atomowe zarządzanie stanem
Tydzień 7: Zaawansowane Animations w iOS i Android
- iOS (Swift)
- Rdzeń Animation: Animowanie widoków, warstw i przejść
- UIKit Dynamics: Tworzenie animacji opartych na fizyce
- Niestandardowe przejścia i animacje między kontrolerami widoku
- Android (Kotlin)
- MotionLayout do tworzenia złożonych animacji
- TransitionManager i współdzielone przejścia elementów
- Animacje właściwości dla skalowania widoku, rotacji i zmian alfa
Tydzień 8: Animations i UI/UX w React Native
- React Native Animations
- Używanie Animated API i Reanimated do złożonych animacji
- Implementowanie gestów i interakcji przy użyciu React Native Gesture Handler
- Najlepsze praktyki dla wydajnych animacji w React Native
- Tworzenie niestandardowych komponentów interfejsu użytkownika
- Tworzenie komponentów wielokrotnego użytku i konfigurowalnych w React Native
- Wdrażanie responsywnych projektów za pomocą zapytań o media i flexbox
Tydzień 9: Integracja natywnych modułów i funkcji urządzenia
- Natywne funkcje urządzenia Access
- Zaawansowane wykorzystanie kamery, geolokalizacji, Bluetooth i czujników
- Tworzenie natywnych modułów w Swift i Kotlin dla React natywnej integracji
- Integracja ARKit dla rzeczywistości rozszerzonej w iOS
- Integracja CameraX i ARCore dla rzeczywistości rozszerzonej w Android
- React Natywny most i natywne moduły
- Tworzenie niestandardowych modułów natywnych w celu integracji z funkcjami specyficznymi dla platformy
- Tworzenie Java i Swift mostów dla React aplikacji natywnych
- Najlepsze praktyki zarządzania kodem natywnym w środowisku wieloplatformowym
Tydzień 10: Testowanie i debugowanie zaawansowanych aplikacji
- Testowanie w iOS (Swift)
- Pisanie testów jednostkowych za pomocą XCTest i testów interfejsu użytkownika dla iOS
- Korzystanie z Xcode Instruments do profilowania wydajności i wycieków pamięci
- Ciągła integracja i testowanie przepływów pracy z Jenkins i CircleCI
- Testowanie w Android (Kotlin)
- Zaawansowane testowanie JUnit i Espresso dla aplikacji Android
- Profilowanie wydajności i identyfikacja wąskich gardeł przy użyciu Android Profiler
- Korzystanie z Firebase Test Lab do zautomatyzowanego testowania na wielu urządzeniach
- Testowanie natywne React
- Testowanie jednostkowe za pomocą Jest i testowanie komponentów za pomocą Enzyme
- Testowanie end-to-end przy użyciu Detox i zautomatyzowanych konfiguracji testowych
- Profilowanie wydajności przy użyciu React Native Debugger i Flipper
Tydzień 11: Wdrażanie aplikacji i ciągła integracja
- Wdrażanie aplikacji w App Store (iOS)
- Przygotowanie aplikacji do przesłania: Certyfikaty App Store, profile udostępniania i testy beta TestFlight
- Używanie Fastlane do automatyzacji iOS wdrażania aplikacji
- Zarządzanie App Store Connect i konfigurowanie procesów weryfikacji aplikacji
- Wdrażanie aplikacji Go w Google Play (Android)
- Przygotowanie pliku APK i podpisanie go w celu przesłania do Google Play
- Automatyzacja Android wdrażania aplikacji za pomocą Fastlane i Gradle
- Korzystanie z Google Play Console do przeglądu aplikacji i testów beta
- Konfigurowanie potoków CI/CD
- Konfigurowanie Jenkins, GitHub Actions lub CircleCI dla zautomatyzowanych potoków kompilacji i wdrażania
- Korzystanie z Fastlane zarówno dla iOS, jak i Android przepływów pracy CI/CD
- Najlepsze praktyki dotyczące obsługi wersjonowania, numerów kompilacji i kanałów wydań
Tydzień 12: Projekt końcowy
- Opracowanie projektu końcowego
- Zaprojektuj i opracuj w pełni funkcjonalną aplikację, która zawiera zaawansowane funkcje poznane w trakcie kursu.
- Wdrożenie niestandardowego interfejsu użytkownika/UX, zaawansowanych animacji, zarządzania stanem, natywnej integracji modułów i komunikacji API w czasie rzeczywistym.
- Zoptymalizuj aplikację pod kątem wydajności i umieść ją w App Store i Google Play.
Podsumowanie i kolejne kroki
Qatar - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Egypt - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Saudi Arabia - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
South Africa - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Brasil - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Canada - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
中国 - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
香港 - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
澳門 - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
台灣 - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
USA - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Denmark - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Estonia - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Finland - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Greece - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Magyarország - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Ireland - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Luxembourg - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Latvia - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
España - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Italia - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Lithuania - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Nederland - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Norway - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Portugal - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
România - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Sverige - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Türkiye - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Malta - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Belgique - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
France - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
日本 - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Australia - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Malaysia - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
New Zealand - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Philippines - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Singapore - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Thailand - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Vietnam - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
India - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Argentina - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Chile - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Costa Rica - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Ecuador - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Guatemala - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Colombia - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
México - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Panama - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Peru - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Uruguay - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Venezuela - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Polska - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
South Korea - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Pakistan - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Sri Lanka - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Bulgaria - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Bolivia - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Indonesia - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Kazakhstan - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Moldova - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Morocco - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Tunisia - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Kuwait - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Oman - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Slovakia - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Kenya - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Nigeria - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Botswana - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Slovenia - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Croatia - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Serbia - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Bhutan - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Nepal - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)
Uzbekistan - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)