《雲端代碼》是2013年由人民郵電出版社出版的一本書籍,作者是美國Mark C. Chu-Carroll。
基本介紹
- 作者:Mark C. Chu-Carroll
- 譯者:劉 姝 / 管雪濤
- ISBN:9787115301994
- 頁數:215
- 定價:45.00元
- 出版社:人民郵電出版社
- 出版時間:2013-1
- 裝幀:平裝
- 副標題:Google App Engine編程指南
內容介紹,作者介紹,作品目錄,
內容介紹
《雲端代碼:Google App Engine編程指南》介紹了如何將應用程式構建為服務,如何使用App Engine管理持久化數據,如何構建可在用戶瀏覽器上運行的、動態的、可互動的用戶界面。如何管理Web套用的安全性,如何用App Engine與雲端運行的其他服務互動。
《雲端代碼:Google App Engine編程指南》中闡述了雲套用的內涵,剖析了其與傳統套用的區別,並通過使用Python與Java對一個簡單的套用進行不斷的深入開發,揭示出App Engine的各方面特性,從而使讀者順利掌握構建雲端應用程式的秘訣。
作者介紹
Mark Chu-Carroll
谷歌軟體工程師,從事軟體開發將近20年。業餘時,他還負責開發和管理Scientopia.org,並在該網站上發表數學部落格Good Math/Bad Math,其部落格地址http://scientopia.org/blogs/goodmath。
作品目錄
目 錄
第一部分 Google App Engine入門
第1章 簡介 2
1.1 什麼是雲計算 2
1.1.1 雲的概念 2
1.1.2 雲與開發者 3
1.1.3 雲計算與客戶/伺服器計算 4
1.1.4 何時用雲開發 5
1.2 雲計算編程系統 6
1.3 致謝 8
第2章 入門 9
2.1 設定Google App Engine賬戶 9
2.2 設定開發環境 10
2.3 開始App Engine中的Python編程 13
2.4 監視應用程式 18
2.5 參考文獻和資源 20
第二部分 用Python進行Google App Engine編程
第3章 第一個真正的雲應用程式 22
3.1 基本的聊天應用程式 22
3.2 HTTP基礎 25
3.3 聊天應用程式到HTTP的映射 28
3.4 參考文獻和資源 33
第4章 雲中的數據管理 34
4.1 聊天軟體為何不工作? 34
4.2 聊天軟體的持久性改造 36
4.2.1 創建和存儲持久性對象 37
4.2.2 取回持久性對象 39
4.2.3 使用GQL查詢改進聊天軟體 39
4.2.4 添加計數限制視圖 40
4.2.5 添加時間限制視圖 41
4.3 參考文獻和資源 42
第5章 Google App Engine的登錄認證服務 43
5.1 users服務簡介 43
5.2 users服務 44
5.2.1 用戶對象和當前用戶 44
5.2.2 用戶登錄 44
5.3 整合users服務到聊天軟體中 45
第6章 代碼組織:分離用戶界面和邏輯 47
6.1 模板入門 47
6.1.1 為什麼學習另一種語言 48
6.1.2 模板基礎:採用模板顯示聊天軟體 48
6.2 用模板創建相關視圖 51
6.2.1 模板繼承 52
6.2.2 使用模板定製聊天視圖 54
6.3 多聊天室 55
6.3.1 更新多聊天室的邏輯 55
6.3.2 構建多聊天室的登錄頁面 56
6.3.3 聊天頁面模板 56
6.4 參考文獻和資源 59
第7章 增強用戶界面的美觀性:模板和CSS 60
7.1 CSS簡介 60
7.2 使用CSS為文本添加樣式 61
7.3 使用CSS的頁面布局 65
7.3.1 用div元素描述文檔結構 66
7.3.2 基於流的布局 67
7.4 使用流布局構建我們的界面 72
7.5 在App Engine應用程式中包含CSS檔案 75
7.6 參考文獻和資源 76
第8章 進行互動 77
8.1 互動式網路服務:基礎知識 77
8.2 模型?視圖?控制器設計模式 79
8.3 與伺服器不中斷地互動 81
8.3.1 模型:聊天室的請求處理程式 83
8.3.2 控制器:客戶端的JavaScript程式 84
8.3.3 聊天視圖 86
8.4 參考文獻和資源 87
第三部分 用Java進行Google App Engine編程
第9章 Google App Engine和Java 90
9.1 GWT簡介 91
9.2 Java和GWT入門 92
9.2.1 GWT應用程式的結構 93
9.2.2 在GWT中設定用戶界面 94
9.3 GWT中的遠程過程調用 98
9.3.1 GWT中的客戶端RPC 99
9.3.2 GWT中的伺服器端RPC 101
9.4 使用GWT進行測試和部署 102
第10章 管理伺服器端數據 103
10.1 Java中的數據持久性 103
10.2 在GWT中存儲持久性對象 106
10.3 在GWT中取回持久性對象 109
10.4 將客戶端和伺服器粘合在一起 111
10.5 參考文獻和資源 112
第11章 用Java構建用戶界面 113
11.1 為什麼使用GWT 113
11.2 使用部件構建GWT用戶界面 114
11.3 激活用戶界面:處理事件 119
11.4 激活用戶界面:更新顯示 123
11.5 GWT結束語 125
11.6 參考文獻和資源 125
第12章 構建Java應用程式的伺服器端 126
12.1 填補空白:支持聊天室功能 126
12.1.1 實現ChatRoom類 127
12.1.2 持久性的類和GWT 127
12.1.3 伺服器端的ChatRoom方法 129
12.2 適當的互動式設計:增量式設計 130
12.2.1 增量式更新的數據對象 131
12.2.2 增量式的聊天室界面 132
12.2.3 解決時間難題 133
12.2.4 實現伺服器端的方法 134
12.3 更新客戶端 136
12.4 聊天室管理 137
12.5 運行和部署聊天應用程式 139
12.6 伺服器端結束語 140
第四部分 高級Google App Engine編程
第13章 高級數據倉庫:特性類型 142
13.1 構建檔案系統服務 142
13.2 淺嘗檔案系統建模 145
13.2.1 數據倉庫關鍵字和引用 150
13.2.2 實現檔案系統的其餘部分 154
13.2.3 用GET實現檔案獲取 155
13.2.4 用PUT實現檔案存儲 157
13.3 特性類型引用 158
13.3.1 原始特性類型 158
13.3.2 複雜特性類型 159
13.4 特性類型結束語 160
第14章 高級數據倉庫:特性類型 161
14.1 數據倉庫中的索引和查詢 161
14.1.1 揭開數據倉庫的面紗 161
14.1.2 自動生成的索引 163
14.1.3 創建自定義索引 163
14.1.4 Java中的索引 165
14.2 更靈活的模型 165
14.3 事務、關鍵字和實體組 167
14.4 策略和一致性模型 168
14.5 漸進式取回 170
第15章 Google App Engine服務 172
15.1 快速訪問重要內容:Memcache服務 172
15.1.1 在Python中使用Memcache 173
15.1.2 在Java中使用Memcache 174
15.1.3 應該快取何種內容 175
15.1.4 快取訪問模式 176
15.2 訪問其他內容:URL Fetch服務 176
15.3 與人溝通:Mail和Chat服務 177
15.3.1 傳送聊天訊息 177
15.3.2 接收即時訊息 178
15.3.3 在Python中處理聊天訊息 179
15.3.4 在Java中接收聊天訊息 179
15.4 傳送和接收電子郵件 180
15.4.1 傳送郵件 180
15.4.2 接收郵件 181
15.5 服務結束語 183
第16章 雲中的伺服器計算 184
16.1 用App Engine Cron調度作業 184
16.1.1 Cron調度器 185
16.1.2 實現Cron請求處理程式 186
16.2 用任務佇列動態運行作業 188
16.2.1 任務 188
16.2.2 創建任務 189
16.2.3 使用多任務佇列 191
16.3 伺服器計算結束語 192
第17章 App Engine服務的安全性 193
17.1 什麼是安全性 193
17.2 基本的安全性 193
17.2.1 添加聊天室的管理功能 194
17.2.2 實現聊天角色 195
17.3 高級安全性 199
17.3.1 直接攻擊 200
17.3.2 跨站點腳本 201
17.3.3 竊聽攻擊 202
17.3.4 拒絕服務攻擊 202
17.5 參考文獻和資源 203
17.4 小結 204
第18章 管理App Engine部署 205
18.1 監視 205
18.2 小探數據倉庫 207
18.3 日誌和調試 208
18.4 管理應用程式 210
18.5 支付用戶所使用的資源 211
第19章 結束語 212
19.1 雲的概念 212
19.2 Google App Engine的概念 213
19.3 路在何方 214
19.4 參考文獻和資源 215
第一部分 Google App Engine入門
第1章 簡介 2
1.1 什麼是雲計算 2
1.1.1 雲的概念 2
1.1.2 雲與開發者 3
1.1.3 雲計算與客戶/伺服器計算 4
1.1.4 何時用雲開發 5
1.2 雲計算編程系統 6
1.3 致謝 8
第2章 入門 9
2.1 設定Google App Engine賬戶 9
2.2 設定開發環境 10
2.3 開始App Engine中的Python編程 13
2.4 監視應用程式 18
2.5 參考文獻和資源 20
第二部分 用Python進行Google App Engine編程
第3章 第一個真正的雲應用程式 22
3.1 基本的聊天應用程式 22
3.2 HTTP基礎 25
3.3 聊天應用程式到HTTP的映射 28
3.4 參考文獻和資源 33
第4章 雲中的數據管理 34
4.1 聊天軟體為何不工作? 34
4.2 聊天軟體的持久性改造 36
4.2.1 創建和存儲持久性對象 37
4.2.2 取回持久性對象 39
4.2.3 使用GQL查詢改進聊天軟體 39
4.2.4 添加計數限制視圖 40
4.2.5 添加時間限制視圖 41
4.3 參考文獻和資源 42
第5章 Google App Engine的登錄認證服務 43
5.1 users服務簡介 43
5.2 users服務 44
5.2.1 用戶對象和當前用戶 44
5.2.2 用戶登錄 44
5.3 整合users服務到聊天軟體中 45
第6章 代碼組織:分離用戶界面和邏輯 47
6.1 模板入門 47
6.1.1 為什麼學習另一種語言 48
6.1.2 模板基礎:採用模板顯示聊天軟體 48
6.2 用模板創建相關視圖 51
6.2.1 模板繼承 52
6.2.2 使用模板定製聊天視圖 54
6.3 多聊天室 55
6.3.1 更新多聊天室的邏輯 55
6.3.2 構建多聊天室的登錄頁面 56
6.3.3 聊天頁面模板 56
6.4 參考文獻和資源 59
第7章 增強用戶界面的美觀性:模板和CSS 60
7.1 CSS簡介 60
7.2 使用CSS為文本添加樣式 61
7.3 使用CSS的頁面布局 65
7.3.1 用div元素描述文檔結構 66
7.3.2 基於流的布局 67
7.4 使用流布局構建我們的界面 72
7.5 在App Engine應用程式中包含CSS檔案 75
7.6 參考文獻和資源 76
第8章 進行互動 77
8.1 互動式網路服務:基礎知識 77
8.2 模型?視圖?控制器設計模式 79
8.3 與伺服器不中斷地互動 81
8.3.1 模型:聊天室的請求處理程式 83
8.3.2 控制器:客戶端的JavaScript程式 84
8.3.3 聊天視圖 86
8.4 參考文獻和資源 87
第三部分 用Java進行Google App Engine編程
第9章 Google App Engine和Java 90
9.1 GWT簡介 91
9.2 Java和GWT入門 92
9.2.1 GWT應用程式的結構 93
9.2.2 在GWT中設定用戶界面 94
9.3 GWT中的遠程過程調用 98
9.3.1 GWT中的客戶端RPC 99
9.3.2 GWT中的伺服器端RPC 101
9.4 使用GWT進行測試和部署 102
第10章 管理伺服器端數據 103
10.1 Java中的數據持久性 103
10.2 在GWT中存儲持久性對象 106
10.3 在GWT中取回持久性對象 109
10.4 將客戶端和伺服器粘合在一起 111
10.5 參考文獻和資源 112
第11章 用Java構建用戶界面 113
11.1 為什麼使用GWT 113
11.2 使用部件構建GWT用戶界面 114
11.3 激活用戶界面:處理事件 119
11.4 激活用戶界面:更新顯示 123
11.5 GWT結束語 125
11.6 參考文獻和資源 125
第12章 構建Java應用程式的伺服器端 126
12.1 填補空白:支持聊天室功能 126
12.1.1 實現ChatRoom類 127
12.1.2 持久性的類和GWT 127
12.1.3 伺服器端的ChatRoom方法 129
12.2 適當的互動式設計:增量式設計 130
12.2.1 增量式更新的數據對象 131
12.2.2 增量式的聊天室界面 132
12.2.3 解決時間難題 133
12.2.4 實現伺服器端的方法 134
12.3 更新客戶端 136
12.4 聊天室管理 137
12.5 運行和部署聊天應用程式 139
12.6 伺服器端結束語 140
第四部分 高級Google App Engine編程
第13章 高級數據倉庫:特性類型 142
13.1 構建檔案系統服務 142
13.2 淺嘗檔案系統建模 145
13.2.1 數據倉庫關鍵字和引用 150
13.2.2 實現檔案系統的其餘部分 154
13.2.3 用GET實現檔案獲取 155
13.2.4 用PUT實現檔案存儲 157
13.3 特性類型引用 158
13.3.1 原始特性類型 158
13.3.2 複雜特性類型 159
13.4 特性類型結束語 160
第14章 高級數據倉庫:特性類型 161
14.1 數據倉庫中的索引和查詢 161
14.1.1 揭開數據倉庫的面紗 161
14.1.2 自動生成的索引 163
14.1.3 創建自定義索引 163
14.1.4 Java中的索引 165
14.2 更靈活的模型 165
14.3 事務、關鍵字和實體組 167
14.4 策略和一致性模型 168
14.5 漸進式取回 170
第15章 Google App Engine服務 172
15.1 快速訪問重要內容:Memcache服務 172
15.1.1 在Python中使用Memcache 173
15.1.2 在Java中使用Memcache 174
15.1.3 應該快取何種內容 175
15.1.4 快取訪問模式 176
15.2 訪問其他內容:URL Fetch服務 176
15.3 與人溝通:Mail和Chat服務 177
15.3.1 傳送聊天訊息 177
15.3.2 接收即時訊息 178
15.3.3 在Python中處理聊天訊息 179
15.3.4 在Java中接收聊天訊息 179
15.4 傳送和接收電子郵件 180
15.4.1 傳送郵件 180
15.4.2 接收郵件 181
15.5 服務結束語 183
第16章 雲中的伺服器計算 184
16.1 用App Engine Cron調度作業 184
16.1.1 Cron調度器 185
16.1.2 實現Cron請求處理程式 186
16.2 用任務佇列動態運行作業 188
16.2.1 任務 188
16.2.2 創建任務 189
16.2.3 使用多任務佇列 191
16.3 伺服器計算結束語 192
第17章 App Engine服務的安全性 193
17.1 什麼是安全性 193
17.2 基本的安全性 193
17.2.1 添加聊天室的管理功能 194
17.2.2 實現聊天角色 195
17.3 高級安全性 199
17.3.1 直接攻擊 200
17.3.2 跨站點腳本 201
17.3.3 竊聽攻擊 202
17.3.4 拒絕服務攻擊 202
17.5 參考文獻和資源 203
17.4 小結 204
第18章 管理App Engine部署 205
18.1 監視 205
18.2 小探數據倉庫 207
18.3 日誌和調試 208
18.4 管理應用程式 210
18.5 支付用戶所使用的資源 211
第19章 結束語 212
19.1 雲的概念 212
19.2 Google App Engine的概念 213
19.3 路在何方 214
19.4 參考文獻和資源 215