Course Code: bootcampreactdevadv
Duration: 420 hours
Prerequisites:
  • 對程式設計概念有紮實的理解,尤其是在 Swift、Kotlin 和 JavaScript 中
  • 構建基本 iOS、Android 或 React 原生應用程式的經驗
  • 瞭解MVC或MVVM等設計模式,並具備基本狀態管理經驗

觀眾

  • 移動開發人員
  • 程式師
Overview:

iOS 開發側重於使用 Swift/Objective-C 和 Xcode 專門為 Apple 設備(iPhone 和 iPad)構建應用程式,Android 開發涉及使用 Kotlin/Java 和 Android Studio 為 Android 設備構建應用程式,React 原生開發是一個跨平臺框架,允許使用 JavaScript 為 iOS 和 Android 構建應用程式,具有共用代碼庫,利用 React 庫進行 UI 開發。

這種講師指導的現場培訓(在線或現場)面向高級開發人員,他們希望學習 Swift、Kotlin 和 Java 腳本中的高級程式設計技術,實施可擴展的架構,並通過安全的 API 集成、即時通信和高級 UI/UX 創建功能豐富的應用程式。

在本次培訓結束時,參與者將能夠:

  • 掌握 Swift、Kotlin 和 Java 腳本中的高級 Programming 技術,包括閉包、協程和 async/await。
  • 使用MVVM為iOS/Android 設計 Scalable 移動應用程式架構,並在 React 本機中使用高級狀態管理。
  • 通過安全的 API 集成、即時通信和高級數據處理(Core Data、SQLite、Room、Firebase)構建功能豐富的行動應用程式。
  • 集成 Native Device 功能,如攝像頭、地理位置和感測器,並在 React Native 中創建自定義 Native 模組。
  • 使用 Animation 和可重用元件創建高級 UI/UX,以實現回應式、高度交互的行動體驗。
  • 使用 Xcode、Android Profiler 和 React Native Debugger 測試、調試和優化應用程式的性能和可靠性。
  • 使用 CI/CD 管道部署應用程式,以實現持續集成並自動發佈到 App Store 和 Google Play。
  • 完成 Capstone 專案,開發生產就緒型應用程式並將其部署到應用商店。

課程形式

  • 互動講座和討論。
  • 大量的練習和練習。
  • 在即時實驗室環境中動手實施。

課程自定義選項

  • 要申請本課程的定製培訓,請聯繫我們進行安排。
Course Outline:

介紹

第 1 周:高級 Swift、Kotlin 和 Java腳本概念

  • Swift (iOS)
    • 高級函數:閉包、捕獲值、高階函數
    • 面向協議的程式設計和泛型
    • 使用 ARC 進行記憶體管理(自動參考計數 )
  • Kotlin (Android)
    • 擴展函數和 Kotlin 標準庫
    • 用於異步程式設計的協程
    • 密封類、枚舉和高級錯誤處理
  • Java文稿 (React 本機)
    • 高級ES6+ 功能:解構、async/await、promise
    • JavaScript 中的函數式程式設計概念
    • 在 React Native 中使用第三方庫

第 2 周:行動應用程式架構和Design Patterns

  • 用於 iOS 和 Android 的 MVVM (Model-View-ViewModel)
    • 瞭解 iOS (Swift) 和 Android (Kotlin) 的 MVVM 架構
    • 使用 LiveData (Android) 和 Combine (iOS) 實現 ViewModel 並觀察數據
    • React使用 RxSwift 和 RxKotlin 進行程式設計
  • React Native 中基於元件的架構
    • 了解元件生命週期和 hook
    • 大規模管理 state 和 prop 的最佳實踐
    • 使用 React Context API 進行全域狀態管理

第 3 周:高級 Networking 概念

  • Networking 在 iOS (Swift) 中
    • 使用 URLSession 處理自定義網路請求
    • 高級 REST API 呼叫和錯誤處理
    • 使用 Codable 和 JSON 解析
    • 安全 API 通信的最佳實踐(SSL 固定、OAuth)
  • Networking 在 Android (Kotlin) 中
    • 用於進行 API 調用和處理響應的改進
    • 高級 API 錯誤處理和重試機制
    • 使用 Gson 或 Moshi 進行 JSON 解析
    • 使用 HTTPS 和 OAuth 身份驗證進行安全通信

第 4 周:Networking 在 React 母語

  • 與 Axios 和 Fetch 的 API 集成
    • 與 Axios 和 Fetch 的高級 API 集成
    • 網路請求中的錯誤處理策略和重試
    • 使用身份驗證(JWT、OAuth)
  • WebSockets 和即時 Communication
    • React Native 中的 WebSockets 簡介
    • 使用 WebSocket 連接構建即時聊天或通知功能
    • 管理持久連接和數據更新

第 5 周:高級數據持久性技術

  • Core Data 和 SQLite (iOS)
    • 高級 Core Data 關係、獲取和查詢
    • 直接將 SQLite 用於 iOS 應用程式並管理資料庫連接
    • 高效的數據處理和優化
  • Room 持久性和 SQLite (Android)
    • 高級 Room 資料庫關係和查詢
    • 管理大型數據集和優化資料庫性能
    • 使用 ProGuard 保護資料庫結構
  • Firebase 對於 Cloud Storage(iOS 和 Android)
    • 與 Firebase 集成以實現實時資料庫管理
    • 同步本地數據和雲數據的最佳實踐

第 6 周:高級狀態 Management 在 React 本地

  • Redux 代表州 Management
    • 高級 Redux 概念:中間件、Thunks 和 Sagas
    • 優化 Redux 以實現性能和可擴充性
  • 狀態的後坐力 Management
    • Recoil 簡介:Redux 的更靈活的替代方案
    • 處理跨元件的大規模狀態管理
    • 高效的狀態更新和原子狀態管理

第 7 周:iOS 和 Android 中的晚期 Animation

  • iOS (Swift)
    • 核心 Animation:為視圖、層次和過渡設置動畫
    • UIKit 動力學:創建基於物理的動畫
    • 視圖控制器之間的自定義過渡和動畫
  • Android (Kotlin)
    • 用於創建複雜動畫的MotionLayout
    • TransitionManager 和共用元素過渡
    • 用於檢視縮放、旋轉和 Alpha 更改的屬性動畫

第 8 周:React 原生中的 Animation 和 UI/UX

  • React 原生 Animation
    • 使用 Animated API 和 Reanimated 製作複雜的動畫
    • 使用 React 原生手勢處理程序實現手勢和交互
    • React Native 中高性能動畫的最佳實踐
  • 創建自訂UI元件
    • 在 React Native 中構建可重用和可定製的元件
    • 使用媒體查詢和 flexbox 實現響應式設計

第 9 周:集成原生模組和設備功能

  • Accessing 本機設備功能
    • 相機、地理位置、藍牙和感測器的高級用法
    • 在 Swift 和 Kotlin 中創建原生模組,用於 React 原生集成
    • 在 iOS 中集成ARKit以進行增強現實
    • 在 Android 中集成 CameraX 和 ARCore 以實現增強現實
  • React Native Bridge 和 Native Modules
    • 構建自定義原生模組以與特定於平臺的功能集成
    • 為 React 本機應用程式創建 Java 和 Swift 橋
    • 在跨平台環境中管理本機代碼的最佳實踐

第 10 周:測試和調試高級應用程式

  • 在 iOS (Swift) 中進行測試
    • 使用 XCTest 編寫單元測試,併為 iOS 編寫 UI 測試
    • 使用 Xcode Instruments 進行性能分析和記憶體洩漏
    • 使用 Jenkins 和 CircleCI 進行持續集成和測試工作流程
  • 在 Android (Kotlin) 中進行測試
    • 適用於 Android 應用的高級 JUnit 和 Espresso 測試
    • 使用 Android Profiler 分析性能並識別瓶頸
    • 使用 Firebase Test Lab 在多個設備上進行自動化測試
  • React 原生測試
    • 使用 Jest 進行單元測試,使用 Enzyme 進行組分測試
    • 使用Detox和自動化測試設置進行端到端測試
    • 使用 React 本機調試器和 Flipper 進行性能分析

第 11 周:應用程式部署和持續集成

  • App Store (iOS) 部署
    • 準備應用程式以供提交:App Store 證書、預置描述檔和 TestFlight Beta 版 測試
    • 使用 Fastlane 實現 iOS 應用程式部署的自動化
    • 管理 App Store Connect 和設置 App 審核流程
  • Google Play (Android) 部署
    • 準備 APK 並為其簽名以進行 Google Play 提交
    • 使用 Fastlane 和 Gradle 自動部署 Android 應用程式
    • 使用 Google Play 管理中心進行應用審核和 Beta 測試
  • 設置 CI/CD 管道
    • 配置 Jenkins、GitHub Actions 或 CircleCI 以實現自動化構建和部署管道
    • 將 Fastlane 用於 iOS 和 Android CI/CD 工作流
    • 處理版本控制、內部版本號和發佈通道的最佳做法

第 12 周:Capstone 專案

  • 最終項目開發
    • 設計和開發一個功能齊全的應用程式,其中包含在整個課程中學到的高級功能。
    • 實施自定義UI/UX、高級動畫、狀態管理、原生模組集成和即時 API 通信。
    • 優化應用程式的性能並將其部署到 App Store 和 Google Play。

總結和後續步驟

Sites Published:

United Arab Emirates - iOS, Android, and React Native Development Bootcamp (Intermediate to Advanced Level)

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)

Czech Republic - 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)

United Kingdom - 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)