差異處

這裏顯示兩個版本的差異處。

連向這個比對檢視

Both sides previous revision 前次修改
下次修改
前次修改
公開:app課程綱要 [2017/09/18 13:19]
kent [Android基礎篇]
公開: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)。
-<​del> ​ - Eclipse 專案轉移(1hr)。</​del>​ 
   - Java基本語法介紹(6hrs)。   - Java基本語法介紹(6hrs)。
   - Android App基本架構與生命週期(2hrs)。   - Android App基本架構與生命週期(2hrs)。
行 156: 行 210:
   - 背景執行與Service(4hrs)。   - 背景執行與Service(4hrs)。
   - 多媒體應用:​錄音、放音、拍照、錄影...etc(16hrs)。   - 多媒體應用:​錄音、放音、拍照、錄影...etc(16hrs)。
-<​del>  ​- FB 分享(6hrs)。</​del>​+  ​- FB 分享(6hrs)。
   - SQLite支援(10hrs)。   - 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的整合運用。
 +
 +----