---- ====== iOS App 開發領域(Swift and Objective-C) ====== ===== Swift語言基礎: (總時數約 24~28hrs) ===== **適用對象: 無任何程式設計基礎,或者有任何領域程式設計基礎者** - Swift 語言歷史 - Swift 語言特色與注意事項 - Playground 簡介 - 變數、常數、運算與轉型 - 可選型別與可選鏈 - 元組、陣列與字典 - 結構與列舉 - 程式邏輯控制 - 函式基本使用 - Swift 的記憶體管理 - 泛型 - 類別及基本運作 - 建構函式與解構函式 - 繼承與覆寫 - 協定與代理 - 閉包 - 錯誤處理 - Swift 專案與 Objective-C 程式碼的整合 - xcode 基本操作 - InterfaceBuilder 使用與互動 - AutoLayout 與 Size Classes 使用 ---- ===== iOS程式設計基礎篇: (總時數約 12~14hrs) ===== **適用對象: 已經上過 Swift 基礎語法或者對 ObjC/Swift 有初步瞭解者** - Apple開發者帳號簡介。 - MVC架構說明。 - AppDelegate與ViewController使用。 - MRC 與 ARC 記憶體管理。 - 模擬器使用。 - Interface Builder使用。 - Auto Sizing 運用。 - Auto Layout運用。 - Size Classes運用。 - Storyboard 與 XIB 簡介。 - iOS資料結構簡介。 - 經緯度與座標系統介紹。 - iOS定位技術運用。 - 地圖與進階地圖運用。 - iOS Framework簡介。 - UI元件使用簡介。 ---- ===== 使用者介面與UI架構: (總時數約 12~21hrs)===== **適用對象: 已經上過 Swift 基礎語法或者對 ObjC/Swift 有初步瞭解者** - Storyboard 運用。 - Segue 與資料傳遞。 - Modal View Controller 架構運用。 - Navigation View Controller 架構運用。 - Tabbar Controller 架構運用。 - Table View Controller 架構運用: 靜態與動態形式。 - 客製化 Table View Cell運用。 - UIScrollView運用。 - 動畫呈現與特效。 - UIImage 使用與注意事項。 - iPad UI 支援與注意事項。 - Split View Controller 運用。 - Popover View Controller 運用。 - 多執行緒支援與GCD。 - NSTimer支援。 - Collection View Controller 運用。 - 手勢操作支援。 ---- ===== 網路應用篇: (總時數約 12~14hrs)===== **適用對象: 已經上過 Swift 基礎語法或者對 ObjC/Swift 有初步瞭解者** - WebView運用與Javascript支援。 - Web Service 與 HTTP Request運用。 - JSON支援。 - 網路狀態檢查。 - XML支援。 - 第三方登入支援: Google登入、FB登入 - 傳輸加密與資料安全。 ---- ===== 內建裝置與多媒體應用篇: (總時數約 18~21hrs) ===== **適用對象: 已經上過 Swift 基礎語法或者對 ObjC/Swift 有初步瞭解者** - iOS的硬體規格與注意事項。 - 音效與震動。 - 放音與錄音。 - 影片播放。 - 小型感應器應用: 接近感應器/三軸感應器/羅盤/陀螺儀/氣壓計/TouchID指紋認證。 - 拍照與錄影。 - 相簿的存取。 - QRCode支援。 - HealthKit應用。 - App Extension 介紹。 - Today Widget運用。 - Document Provider運用。 - 背景執行與多工。 ---- ===== 資料儲存與雲端儲存: (總時數約 18~21hrs) ===== **適用對象: 已經上過 Swift 基礎語法或者對 ObjC/Swift 有開發經驗者** - 沙盒架構與檔案生命週期。 - 非資料庫的檔案儲存方式介紹。 - 檔案管理與運用。 - PLIST運用。 - NSUserDefault運用。 - SQLite運用。 - CoreData運用。 - Dropbox SDK運用。 - Google Drive SDK運用。 - iCloud運用。 ---- ===== 憑證與上架作業篇: (總時數約 2~4hrs)===== **適用對象: 已經上過 Swift 基礎語法或者對 ObjC/Swift 有初步瞭解者** - Apple的測試、發佈與上架的憑證作業。 - 送審與開發的注意事項。 - TestFlight運用。 ---- ===== iOS資訊安全規劃與實作篇: (總時數約 12~14hrs)===== **適用對象: 有 iOS App 開發經驗的工程師、專案經理與研發部門主管** - iOS App應用資訊安全規劃概念簡介 - 網路安全--通訊架構規劃與主機準備 - 網路安全--傳輸安全機制 - 網路安全--SSL Pinning 驗證 - 資料安全--本地端資料保護(檔案加解密、Keychain、Data Protection) - 資料安全--隱私與加密 - 程式安全--從程式碼下手(NSLog,第三方程式庫) - 程式安全--反組譯防範 - 程式安全--IPA檔案結構說明 - 程式安全--注入攻擊防範 - 程式安全--系統自動截圖防範 - 資訊安全分析工具簡介 - 企業應用與資源 ---- ===== 物聯網與藍牙應用: (總時數約 18~24hrs) ===== **適用對象: 已經上過 Swift 基礎語法或者對 ObjC/Swift 有開發經驗者** - 物聯網簡介 - CoreBluetooth 架構說明。 - 以 Central 方式使用 BLE。 - 以 Peripheral 方式使用 BLE。 - App 串接 BLE 硬體演練。 - iBeacon 使用。 - CoreBluetooth 於背景執行中的運用。 - iBeacon運用。 - 讓 iPhone 模擬 iBeacon。 ---- ===== 推撥與聊天室: (總時數約 18~28hrs) ===== **適用對象: 已經上過 Swift 基礎語法或者對 ObjC/Swift 有開發經驗者** - 推撥架構原理說明。 - 推撥憑證申請與管理。 - 推撥支援用主機架設介紹。 - App與主機串結實作。 - 聊天記錄保存 (CoreData or SQLite)。 - 對話式聊天介面實作。 ---- ====== Android App 開發領域 ===== ===== Android基礎篇 (總時數約 80~100hrs)===== **適用對象: 已經上過 Java 基礎語法或者對 Java語言有初步瞭解者** - Android Studio 安裝與模擬器的基本使用(4hrs)。 - 模擬器開發、實機開發與APK包版(1hr)。 - Java基本語法介紹(6hrs)。 - Android App基本架構與生命週期(2hrs)。 - 記憶體管理、UI元件、介面與Layout介紹(16hrs)。 - 進階UI介面介紹: Fragment,ListView,WebView…etc(12hrs)。 - 資源與檔案素材管理與準備(2hrs)。 - 權限與App基本資訊設定(2hrs)。 - 基本資料儲存、檔案管理(4hrs)。 - 網路應用、Web Service、XML與JSON支援(16hrs)。 - 定位與地圖應用(6hrs)。 - 背景執行與Service(4hrs)。 - 多媒體應用:錄音、放音、拍照、錄影...etc(16hrs)。 - FB 分享(6hrs)。 - SQLite支援(10hrs)。 - Java Native Interface (JNI) 應用與 NDK 介紹(4hrs)。 - 補充資料: Eclipse 專案轉移(1hr)。 ====== Python + Flask 後端開發 (總時數約 30~36hrs)====== **適用對象: 任何人,有程式設計經驗為佳** - Why Python? Why Flask? - Python開發環境簡介與準備 - Python3 語法簡介 - Flask簡介 - 開始使用Flask - Flask的程式碼框架 - ORM簡介與優缺點 - SQLAlchemy使用與資料庫串接 - 建立 ORM 物件與資料表 - Flask-Admin簡介與使用 - WebService與RESTful簡介 - Flask RESTful API實作 ---- ====== Arduino 開發領域 (總時數約 30~34hrs)====== **適用對象: 任何人,有無電子電路經驗者皆可** - 物聯網與Arudino開發簡介。 - 開發板與電子電路基本觀念。 - GPIO、數位、類比、I2C等控制方式介紹。 - 環境偵測與顯示互動實作。 - 設備控制與連網實作。 - Arduino與 iOS/Android App的整合運用。 ----