全端Web開發:使用JavaScript與Java ( 簡體 字) |
作者:(美) 薩特諾斯 (Saternos,C.) | 類別:1. -> 程式設計 -> 網路編程 -> Javascript 2. -> 程式設計 -> JAVA -> Java |
譯者: |
出版社:人民郵電出版社 | 3dWoo書號: 42000 詢問書籍請說出此書號!【缺書】 NT售價: 295 元 |
出版日:8/1/2015 |
頁數:193 |
光碟數:0 |
|
站長推薦: |
印刷:黑白印刷 | 語系: ( 簡體 版 ) |
|
加入購物車 │加到我的最愛 (請先登入會員) |
ISBN:9787115397300 |
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 序 |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證) |
作者序: |
譯者序: |
前言: |
內容簡介:JavaScript和Java這兩大生態系統之間如何協同,成為所有Web開發人員共同面臨的問題。本書應運而生,全面又簡練地為讀者展示了最新的C/S應用開發范式。本書以Java和JavaScript這兩種最流行的服務器與客戶端開發環境為例,全面講解了最新的C/S應用開發范式。作者不僅講解了很多實用的C/S開發架構,還通過各種實例進一步強化了讀者的認知。
|
目錄:前言 xiii
第1章 因變而變 1
1.1 Web用戶 2
1.2 技術 2
1.3 軟件開發 3
1.4 哪些沒變 4
1.4.1 Web的本質 5
1.4.2 為什么說服務器驅動的Web開發有害 6
1.5 為什么需要客戶端-服務器端的Web應用 7
1.5.1 代碼組織結構/軟件架構 7
1.5.2 “設計的靈活性”與“使用開源API” 7
1.5.3 原型 7
1.5.4 開發者的效率 8
1.5.5 應用性能 8
1.6 小結 9
第2章 JavaScript和JavaScript工具 11
2.1 學習JavaScript 12
2.2 JavaScript的歷史 13
2.3 一門函數式語言 14
2.3.1 作用域 15
2.3.2 一級函數 16
2.3.3 函數聲明和表達式 17
2.3.4 函數調用 19
2.3.5 函數參數 19
2.3.6 對象 20
2.4 面向Java開發者的JavaScript 20
2.4.1 HelloWord.java 20
2.4.2 帶變量的HelloWord.java 23
2.5 最佳開發實踐 25
2.5.1 編碼規范和約定 25
2.5.2 瀏覽器 26
2.5.3 集成開發環境 26
2.5.4 單元測試 27
2.5.5 文檔 27
2.6 項目 27
第3章 REST和JSON 33
3.1 什么是REST 34
3.1.1 資源 34
3.1.2 動詞(HTTP請求) 34
3.1.3 統一資源標識符 35
3.2 REST約束 36
3.2.1 客戶端-服務器端 36
3.2.2 無狀態 36
3.2.3 可緩存 37
3.2.4 統一接口 37
3.2.5 分層 38
3.2.6 按需交付代碼 38
3.3 HTTP響應代碼 38
3.4 JSON 39
3.5 HATEOAS 40
3.6 API衡量和分類 43
3.7 函數式編程和REST 43
3.8 項目 44
3.9 其他WebAPI工具 48
3.10 約束回顧 48
第4章 Java工具 49
4.1 Java語言 49
4.2 Java虛擬機 50
4.3 Java工具 51
4.4 構建工具 52
4.4.1 Maven的優點 54
4.4.2 Maven的功能 54
4.4.3 版本控制 55
4.4.4 單元測試 56
4.5 處理JSON的Java類庫 56
4.6 項目 57
4.6.1 用Java處理JSON 57
4.6.2 用JVM上的腳本語言處理JSON 59
4.7 小結 62
第5章 客戶端框架 65
5.1 概述 65
5.2 起點一:響應式Web設計 67
5.2.1 HTML5Boilerplate 68
5.2.2 Bootstrap 68
5.3 起點二:JavaScript庫和框架 69
5.3.1 瀏覽器兼容性 69
5.3.2 框架 69
5.3.3 功能 70
5.3.4 流行程度 70
5.4 獲取起始項目 71
5.4.1 直接從倉庫下載 71
5.4.2 從入門網站下載 71
5.4.3 IDE生成的起始項目 72
5.5 前端工程師的崛起 72
5.5.1 客戶端模板 72
5.5.2 資源管道 73
5.5.3 開發流程 74
5.6 項目 74
5.7 小結 76
第6章 JavaWebAPI服務器 77
6.1 更簡單的服務器端解決方案 77
6.2 基于Java的服務器 79
6.2.1 JavaHTTP服務器 79
6.2.2 Jetty嵌入式服務器 81
6.2.3 Restlet 82
6.2.4 Roo 83
6.2.5 Netty嵌入式服務器 87
6.2.6 Play服務器 89
6.2.7 其他輕量級服務器 92
6.3 基于JVM的服務器 92
6.4 Web應用服務器 93
6.5 如何在開發中使用 94
6.6 小結 94
第7章 快速開發實踐 95
7.1 開發者的生產率 95
7.2 優化開發者和團隊的工作流程 98
7.2.1 例子:修復Web應用 99
7.2.2 例子:測試集成 100
7.2.3 例子:綠地開發 101
7.3 生產率和軟件開發生命周期 101
7.3.1 管理方式和企業文化 102
7.3.2 技術架構 102
7.3.3 軟件工具 103
7.3.4 性能 104
7.3.5 測試 104
7.3.6 底層平臺 105
7.4 小結 106
第8章 API設計 107
8.1 設計的起點 108
8.2 實用的WebAPI與RESTAPI 109
8.3 指引 110
8.3.1 名詞即資源,動詞即HTTP行為 110
8.3.2 請求參數作為修飾符 111
8.3.3 WebAPI版本 112
8.3.4 HTTP標頭 113
8.3.5 鏈接 113
8.3.6 響應 113
8.3.7 文檔 113
8.3.8 格式約定 114
8.3.9 安全性 114
8.4 項目 114
8.4.1 運行項目 114
8.4.2 服務端代碼 115
8.4.3 Curl和jQuery 117
8.5 實踐理論 118
第9章 jQuery和Jython 119
9.1 服務端:Jython 120
9.1.1 PythonWeb服務器 120
9.1.2 JythonWeb服務器 120
9.1.3 MockAPI 121
9.2 客戶端:jQuery 122
9.2.1 DOM遍歷和操作 122
9.2.2 實用函數 123
9.2.3 效果 124
9.2.4 事件處理 124
9.2.5 Ajax 124
9.3 jQuery和更高級的抽象 125
9.4 項目 125
9.4.1 基礎HTML 126
9.4.2 JavaScript和jQuery 126
9.5 小結 128
第10章 JRuby和Angular 129
10.1 服務器端:JRuby和Sinatra 130
10.1.1 工作流 130
10.1.2 交互式Rubyshell 131
10.1.3 Ruby版本管理器 131
10.1.4 包 132
10.1.5 Sinatra 133
10.1.6 JSON處理 134
10.2 客戶端:AngularJS 135
10.2.1 模型 135
10.2.2 視圖 135
10.2.3 控制器 136
10.2.4 服務 136
10.3 比較jQuery和Angular 136
10.3.1 DOM和模型操作 136
10.3.2 Angular的不可見性 137
10.4 項目 137
10.5 小結 143
第11章 打包和部署 145
11.1 打包Java和JEE應用 145
11.2 JEE應用的部署 147
11.2.1 圖形界面管理 148
11.2.2 命令行管理 150
11.3 非JEE應用的部署 151
11.3.1 服務器在應用之外 152
11.3.2 服務器和應用并行 152
11.3.3 服務器在應用里面 154
11.4 不同部署方式帶來的影響 154
11.4.1 負載均衡 155
11.4.2 自動化應用部署 156
11.5 項目 157
11.5.1 客戶端 157
11.5.2 服務器端 158
11.6 小結 158
第12章 虛擬化 159
12.1 全虛擬化 159
12.2 虛擬機的實現 161
12.2.1 VMWare 161
12.2.2 VirtualBox 161
12.2.3 AmazonEC2 161
12.3 虛擬機的管理 162
12.3.1 Vagrant 162
12.3.2 Packer 162
12.3.3 DevOps配置管理 163
12.4 容器 163
12.4.1 LXC 164
12.4.2 Docker 164
12.5 項目 165
12.5.1 Docker幫助 166
12.5.2 鏡像和容器的維護 166
12.5.3 在Docker里使用Java 167
12.5.4 Docker和Vagrant的網絡設置 169
12.6 小結 170
第13章 測試和文檔 171
13.1 測試的種類 172
13.1.1 “正式”與“非正式” 172
13.1.2 測試范圍 172
13.1.3 誰來測?測什么?為誰測 173
13.2 測試反映了組織的成熟度 173
13.2.1 使用軟件能力成熟度模型評價流程 173
13.2.2 使用Maven促進流程統一 174
13.2.3 使用行為驅動開發促進流程統一 176
13.3 測試框架 176
13.3.1 JUnit 177
13.3.2 Jasmine 177
13.3.3 Cucumber 178
13.4 項目 179
13.4.1 JUnit 180
13.4.2 Jasmine 180
13.4.3 Cucumber 181
13.4.4 Maven報告 181
13.5 小結 182
第14章 總結 183
14.1 社區 183
14.2 歷史 184
14.3 尾聲 184
附錄A JRubyIRB及JavaAPI 185
附錄B REST式的WebAPI總結 191
附錄C 參考文獻 196
關于作者 197
關于封面圖 197
|
序: |