課程大綱 Syllabus |
學生學習目標 Learning Objectives |
單元學習活動 Learning Activities |
學習成效評量 Evaluation |
備註 Notes |
序 No. | 單元主題 Unit topic |
內容綱要 Content summary |
1 | Introduction to Cloud Computing |
•Defining Cloud Computing
•Assessing the Value Proposition
•Understanding Services and Applications by Type |
•認識雲端服務的應用面、優點、架構與雲端運算型態與類型 |
|
|
|
2 | Understanding Cloud Architecture |
•Using the cloud computing stack to describe different models
•Understanding how platforms and virtual appliances are used
•Learning how cloud communications work
•Discovering the new world of the cloud client |
•瞭解雲端架構與平台 |
|
|
|
3 | SOA & Web Services Technology |
•SOA and Web Services Fundamentals
•Service descriptions (with WSDL)
•Messaging (with SOAP)
•Coordination, Orchestration, and Choreography
•BPM & SOA |
•學習服務導向架構之觀念與基本之網路服務技術與標準 |
|
|
|
4 | GAE開發環境介紹與建置 |
•JDK
•Eclipse
•Google外掛
•安裝Google Chrome瀏覽器
•Google App Engine的設定與SDK安裝 |
•認識主要的Google App Engine雲端服務與以Java 語言開發Google 雲端服務時會使用到的軟體及環境建置 |
|
|
|
5 | 第一個AppEngine專案+雲端應用程式佈署與管理 |
•Google AppEngine的申請
•Google App Engine的API與功能介紹
•建立一個GAE應用程式
•在GAE中設計Servlet
•在GAE中設計JSP
•應用程式設定
•佈署專案到GAE
•管理應用程式 |
•瞭解如何利用Google Plugin在Eclipse中開發一個簡單的專案
•熟悉GAE與其開發方式,並在GAE下設計JSP 與Servlet,在Eclipse中進行執行與測試
•瞭解如何將應用上傳至GAE雲端平台上 |
|
|
|
6 | 網頁前端設計:GWT (Google Web Toolkit) |
•網頁系統技術
•GWT的組成要素
•利用Eclipse以GWT方式設計留言板 |
•認識Google Web Toolkit (GWT)如何在短時間開發出具有動態功能的網頁系統 |
|
|
|
7 | GWT面板與元件 |
•GWT的基礎元件
•GWT的表單元件
•事件處理
•GWT的容器 |
•瞭解GWT的面板與元件的使用方式 |
|
|
|
8 | UiBinder設計畫面 |
•UiBinder的架構
•設計一個UiBinder
•實作聯絡人詳細資料 |
•瞭解GWT的UiBinder如何能將一個應用程式的版面與元件從Java的類別中抽離出來讓網頁設計師進行修改與設計 |
|
|
|
9 | 期中考 |
實作/報告與討論 |
檢驗上半學期學習成效 |
|
|
|
10 | 呼叫遠端程序:RPC |
•GWT的RemoteService
•後端的服務程序
•呼叫後端RPC服務 |
•瞭解如何使用GWT的RemoteService以Java語言實作出具有AJAX特性的前後端溝通橋樑,讓前端能有效率地傳送資料至後端程序,並以簡單的程式碼得到後端資料 |
|
|
|
11 | 資料儲存 |
•Datastore
•JDO
•類別與屬性
•物件的儲存
•資料查詢
•更新/刪除實體資料 |
•瞭解GAE的Datastore與傳統的關聯式資料庫之不同,並學習如何使用JDO進行資料儲存 |
|
|
|
12 | 實作會員資料儲存 |
•以JSP與Servlet實作會員註冊
•會員清單查詢
•物件之間的關係 |
•整合相關知識並以常用的會員資料作為範例,使用JSP、Servlet、JDO、Datastore等知識,在專案中實作一個會員註冊功能,提供使用者輸入會員資料的頁面 |
|
|
|
13 | 以GWT設計留言板 |
•留言板規劃
•建立留言板專案
•新增留言功能實作
•讀取、修改與刪除留言 |
•利用先前所介紹的各項技術,並以常見的留言板為例,設計一個在GAE上執行的雲端網頁專案,將留言記錄儲存在GAE的雲端資料庫Datastore上 |
|
|
|
14 | 帳號驗證 |
•Google帳號驗證
•儲存使用者的Google帳號
•Facebook帳號驗證
•使用RestFB |
•瞭解如何在GAE中實作Google與Facebook的登入功能,並取得登入的帳號資料,以及將帳號儲存至Datastore的會員資料 |
|
|
|
15 | 電子郵件與排程工作 |
•電子郵件
•郵件的要素
•傳送郵件
•日誌記錄
•接收郵件
•排程工作 |
•瞭解如何完成電子郵件的傳遞與接收,以及委託代轉的伺服器、送件者與收件者使用的軟體,與其使用的通訊協定等 |
|
|
|
16 | MapReduce 與 Hadoop |
•MapReduce的運作原理
•MapReduce的特性
•Hadoop 之設定與配置 |
•認識MapReduce的運作原理與特性
•認識Hadoop 的架構、設定與配置 |
|
|
|
17 | 使用Hadoop實作MapReduce |
•開發環境設定
•新增專案
•MapReduce程式架構
•MapReduce實作範例
•Hadoop MapReduce專題 |
•瞭解如何實作 Hadoop MapReduce 程式 |
|
|
|
18 | 期末考 |
SOA, GAE, Cloud Computing之整合專案報告與討論 |
檢驗本課程學習成效 |
|
|
|