差異處
這裏顯示兩個版本的差異處。
Both sides previous revision 前次修改 下次修改 | 前次修改 | ||
公開:app課程綱要 [2017/03/10 18:05] kent ↷ 頁面kent課程:app課程綱要被移動至公開:app課程綱要 |
公開:app課程綱要 [2022/11/16 16:56] (目前版本) kent |
||
---|---|---|---|
行 1: | 行 1: | ||
---- | ---- | ||
+ | ====== iOS App 開發領域(Swift and Objective-C) ====== | ||
- | ====== iOS程式設計基礎篇: ====== | + | ===== Swift語言基礎: (總時數約 24~28hrs) ===== |
+ | |||
+ | **適用對象: 無任何程式設計基礎,或者有任何領域程式設計基礎者** | ||
+ | |||
+ | - Swift 語言歷史 | ||
+ | - Swift 語言特色與注意事項 | ||
+ | - Playground 簡介 | ||
+ | - 變數、常數、運算與轉型 | ||
+ | - 可選型別與可選鏈 | ||
+ | - 元組、陣列與字典 | ||
+ | - 結構與列舉 | ||
+ | - 程式邏輯控制 | ||
+ | - 函式基本使用 | ||
+ | - Swift 的記憶體管理 | ||
+ | - 泛型 | ||
+ | - 類別及基本運作 | ||
+ | - 建構函式與解構函式 | ||
+ | - 繼承與覆寫 | ||
+ | - 協定與代理 | ||
+ | - 閉包 | ||
+ | - 錯誤處理 | ||
+ | - Swift 專案與 Objective-C 程式碼的整合 | ||
+ | - xcode 基本操作 | ||
+ | - InterfaceBuilder 使用與互動 | ||
+ | - AutoLayout 與 Size Classes 使用 | ||
+ | |||
+ | ---- | ||
+ | |||
+ | ===== iOS程式設計基礎篇: (總時數約 12~14hrs) ===== | ||
+ | |||
+ | **適用對象: 已經上過 Swift 基礎語法或者對 ObjC/Swift 有初步瞭解者** | ||
- Apple開發者帳號簡介。 | - Apple開發者帳號簡介。 | ||
- | - Objective-C語言語法說明。 | ||
- MVC架構說明。 | - MVC架構說明。 | ||
- AppDelegate與ViewController使用。 | - AppDelegate與ViewController使用。 | ||
行 15: | 行 45: | ||
- Size Classes運用。 | - Size Classes運用。 | ||
- Storyboard 與 XIB 簡介。 | - Storyboard 與 XIB 簡介。 | ||
- | - Objective-C資料結構簡介。 | + | - iOS資料結構簡介。 |
- 經緯度與座標系統介紹。 | - 經緯度與座標系統介紹。 | ||
- iOS定位技術運用。 | - iOS定位技術運用。 | ||
行 25: | 行 55: | ||
---- | ---- | ||
- | ====== 使用者介面篇: ====== | + | ===== 使用者介面與UI架構: (總時數約 12~21hrs)===== |
+ | |||
+ | **適用對象: 已經上過 Swift 基礎語法或者對 ObjC/Swift 有初步瞭解者** | ||
- Storyboard 運用。 | - Storyboard 運用。 | ||
行 48: | 行 80: | ||
---- | ---- | ||
- | ====== 網路應用篇: ====== | + | ===== 網路應用篇: (總時數約 12~14hrs)===== |
+ | |||
+ | **適用對象: 已經上過 Swift 基礎語法或者對 ObjC/Swift 有初步瞭解者** | ||
- WebView運用與Javascript支援。 | - WebView運用與Javascript支援。 | ||
行 55: | 行 89: | ||
- 網路狀態檢查。 | - 網路狀態檢查。 | ||
- XML支援。 | - XML支援。 | ||
- | - Facebook SDK支援。 | + | - 第三方登入支援: Google登入、FB登入 |
- | - Social Framework支援。 | + | |
- 傳輸加密與資料安全。 | - 傳輸加密與資料安全。 | ||
---- | ---- | ||
- | ====== 內建裝置與多媒體應用篇: ====== | + | ===== 內建裝置與多媒體應用篇: (總時數約 18~21hrs) ===== |
+ | |||
+ | **適用對象: 已經上過 Swift 基礎語法或者對 ObjC/Swift 有初步瞭解者** | ||
- iOS的硬體規格與注意事項。 | - iOS的硬體規格與注意事項。 | ||
行 80: | 行 115: | ||
- | ====== 資料儲存與雲端儲存: ====== | + | ===== 資料儲存與雲端儲存: (總時數約 18~21hrs) ===== |
+ | |||
+ | **適用對象: 已經上過 Swift 基礎語法或者對 ObjC/Swift 有開發經驗者** | ||
- 沙盒架構與檔案生命週期。 | - 沙盒架構與檔案生命週期。 | ||
行 96: | 行 133: | ||
---- | ---- | ||
- | ====== 憑證與上架作業篇: ====== | + | ===== 憑證與上架作業篇: (總時數約 2~4hrs)===== |
+ | |||
+ | **適用對象: 已經上過 Swift 基礎語法或者對 ObjC/Swift 有初步瞭解者** | ||
- Apple的測試、發佈與上架的憑證作業。 | - Apple的測試、發佈與上架的憑證作業。 | ||
行 104: | 行 143: | ||
---- | ---- | ||
- | ====== BLE應用: ====== | + | ===== iOS資訊安全規劃與實作篇: (總時數約 12~14hrs)===== |
+ | **適用對象: 有 iOS App 開發經驗的工程師、專案經理與研發部門主管** | ||
+ | |||
+ | - iOS App應用資訊安全規劃概念簡介 | ||
+ | - 網路安全--通訊架構規劃與主機準備 | ||
+ | - 網路安全--傳輸安全機制 | ||
+ | - 網路安全--SSL Pinning 驗證 | ||
+ | - 資料安全--本地端資料保護(檔案加解密、Keychain、Data Protection) | ||
+ | - 資料安全--隱私與加密 | ||
+ | - 程式安全--從程式碼下手(NSLog,第三方程式庫) | ||
+ | - 程式安全--反組譯防範 | ||
+ | - 程式安全--IPA檔案結構說明 | ||
+ | - 程式安全--注入攻擊防範 | ||
+ | - 程式安全--系統自動截圖防範 | ||
+ | - 資訊安全分析工具簡介 | ||
+ | - 企業應用與資源 | ||
+ | |||
+ | ---- | ||
+ | ===== 物聯網與藍牙應用: (總時數約 18~24hrs) ===== | ||
+ | |||
+ | **適用對象: 已經上過 Swift 基礎語法或者對 ObjC/Swift 有開發經驗者** | ||
+ | |||
+ | - 物聯網簡介 | ||
- CoreBluetooth 架構說明。 | - CoreBluetooth 架構說明。 | ||
- 以 Central 方式使用 BLE。 | - 以 Central 方式使用 BLE。 | ||
- 以 Peripheral 方式使用 BLE。 | - 以 Peripheral 方式使用 BLE。 | ||
+ | - App 串接 BLE 硬體演練。 | ||
- iBeacon 使用。 | - iBeacon 使用。 | ||
- CoreBluetooth 於背景執行中的運用。 | - CoreBluetooth 於背景執行中的運用。 | ||
- iBeacon運用。 | - iBeacon運用。 | ||
- 讓 iPhone 模擬 iBeacon。 | - 讓 iPhone 模擬 iBeacon。 | ||
- | |||
---- | ---- | ||
- | ====== Swift語言基礎: ====== | + | ===== 推撥與聊天室: (總時數約 18~28hrs) ===== |
- | - Swift 語言歷史 | + | |
- | - Swift 語言特色與注意事項 | + | **適用對象: 已經上過 Swift 基礎語法或者對 ObjC/Swift 有開發經驗者** |
- | - Playground 簡介 | + | |
- | - 變數、常數、運算與轉型 | + | - 推撥架構原理說明。 |
- | - 可選型別與可選鏈 | + | - 推撥憑證申請與管理。 |
- | - 元組、陣列與字典 | + | - 推撥支援用主機架設介紹。 |
- | - 結構與列舉 | + | - App與主機串結實作。 |
- | - 程式邏輯控制 | + | - 聊天記錄保存 (CoreData or SQLite)。 |
- | - 函式基本使用 | + | - 對話式聊天介面實作。 |
- | - Swift 的記憶體管理 | + | |
- | - 泛型 | + | |
- | - 類別及基本運作 | + | |
- | - 建構函式與解構函式 | + | |
- | - 繼承與覆寫 | + | |
- | - 協定與代理 | + | |
- | - 閉包 | + | |
- | - Swift 內建函式 | + | |
- | - Swift 專案與 Objective-C 程式碼的整合 | + | |
---- | ---- | ||
- | ====== Android基礎篇 ====== | + | ====== Android App 開發領域 ===== |
+ | |||
+ | ===== Android基礎篇 (總時數約 80~100hrs)===== | ||
+ | |||
+ | **適用對象: 已經上過 Java 基礎語法或者對 Java語言有初步瞭解者** | ||
- Android Studio 安裝與模擬器的基本使用(4hrs)。 | - Android Studio 安裝與模擬器的基本使用(4hrs)。 | ||
- 模擬器開發、實機開發與APK包版(1hr)。 | - 模擬器開發、實機開發與APK包版(1hr)。 | ||
- | - Eclipse 專案轉移(1hr)。 | ||
- Java基本語法介紹(6hrs)。 | - Java基本語法介紹(6hrs)。 | ||
- Android App基本架構與生命週期(2hrs)。 | - Android App基本架構與生命週期(2hrs)。 | ||
- | - 記憶體管理、UI元件、介面與Layout介紹(12hrs)。 | + | - 記憶體管理、UI元件、介面與Layout介紹(16hrs)。 |
- 進階UI介面介紹: Fragment,ListView,WebView…etc(12hrs)。 | - 進階UI介面介紹: Fragment,ListView,WebView…etc(12hrs)。 | ||
- 資源與檔案素材管理與準備(2hrs)。 | - 資源與檔案素材管理與準備(2hrs)。 | ||
行 156: | 行 211: | ||
- 多媒體應用:錄音、放音、拍照、錄影...etc(16hrs)。 | - 多媒體應用:錄音、放音、拍照、錄影...etc(16hrs)。 | ||
- FB 分享(6hrs)。 | - FB 分享(6hrs)。 | ||
- | - SQLite支援(4hrs)。 | + | - SQLite支援(10hrs)。 |
- Java Native Interface (JNI) 應用與 NDK 介紹(4hrs)。 | - 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的整合運用。 | ||
+ | |||
+ | ---- |