会员   密码 您忘记密码了吗?
1,582,941 本书已上架      购物流程 | 常见问题 | 联系我们 | 关于我们 | 用户协议

有店 App


当前分类

商品分类

当前位置: 首页 > 简体书 > 輕量級Web應用開發
輕量級Web應用開發
上一张
下一张
prev next

輕量級Web應用開發

作者: 邱俊濤
出版社: 人民郵電出版社
出版日期: 2015-07-01
商品库存: 点击查询库存
以上库存为海外库存属流动性。
可选择“空运”或“海运”配送,空运费每件商品是RM14。
配送时间:空运约8~12个工作天,海运约30个工作天。
(以上预计配送时间不包括出版社库存不足需调货及尚未出版的新品)
定价:   NT330.00
市场价格: RM59.33
本店售价: RM52.80
购买数量:
collect Add to cart Add booking
详细介绍 商品属性 商品标记
內容簡介

輕量級開發是一個很寬泛的主題,開發人員經常提到這個術語,但卻少有人能夠講明它的內涵。本書介紹了輕量級Web應用開發背后的核心理念和方法。

全書共16章,介紹了環境配置與工具准備、Web應用服務器、數據庫訪問層、客戶端框架、CSS框架、客戶端測試框架、現代的前端開發方式、編寫更容易維護的JavaScript代碼、本地構建、持續集成、單元測試與集成測試、環境搭建的自動化、應用程序發布、前端實例、后台實例、集成實例。除此之外,附錄部分還介紹了一些補充知識。

本書適合軟件開發人員以及對輕量級Web開發感興趣的讀者閱讀。

邱俊濤,軟件工程師,現就職於ThoughtWorks,喜歡編程,尤其喜歡編程帶來的成就感。對動態語言,函數式編程等有濃厚的興趣。喜歡開源軟件,喜歡知識分享,並從他人的分享中學習。崇尚簡單,輕量的設計和模式。


目錄

前言

第1章 環境配置與工具准備1
1.1 Shell1
1.2 管道7
1.3 幾個常用命令9
1.3.1 文件查找命令find9
1.3.2 網絡命令curl11
1.3.3 文件搜索grep13
1.3.4 定時任務crontab14
1.3.5 JSON查詢利器jq15
1.4 編輯器18
1.4.1 Vim編輯器18
1.4.2 Sublime Text編輯器23
1.5 程序啟動器26
1.5.1 Launchy27
1.5.2 Alfred27
1.6 關於Windows29

第2章 Web應用服務器30
2.1 Rack30
2.1.1 rackup32
2.1.2 Rack中間件36
2.2 Sinatra39
2.2.1404頁面39
2.2.2 使用模板引擎44
2.2.3 簡單認證中間件46
2.3 Grape47

第3章 數據庫訪問層56
3.1 數據庫的訪問56
3.2 數據庫方案(schema)的修改57
3.3 ActiveRecord59
3.3.1 和Rails一起使用59
3.3.2 獨立使用(在既有數據庫中)65
3.3.3 校驗70
3.4 DataMapper76

第4章 客戶端框架80
4.1 富客戶端80
4.2 Backbone.js簡介83
4.2.1 模型83
4.2.2 視圖85
4.2.3 集合91
4.2.4 與服務器交互94
4.2.5 路由表95
4.3 Angular.js98
4.3.1 數據雙向綁定98
4.3.2 內置指令100
4.3.3 AngularJS中的服務101
4.3.4 與RESTFul的API集成105
4.3.5 與moko集成106

第5章 CSS框架簡介108
5.1 Foundation簡介108
5.2 BootStrap簡介117
5.2.1 布局118
5.2.2 常用組件121

第6章 客戶端測試框架130
6.1 Jasmine簡介130
6.1.1 Spy功能131
6.1.2 自定義匹配器133
6.2 Mocha134
6.2.1 Mocha的基本用法135
6.2.2 測試異步場景137

第7章 現代的前端開發方式140
7.1 Karma簡介140
7.2 前端依賴管理141
7.3 搭建工程143
7.4 測試驅動開發146
7.5 實例Todoify147
7.5.1 underscore的一些特性148
7.5.2 jQuery插件基礎知識150
7.5.3 Todoify151
7.5.4 進一步改進159

第8章 編寫更容易維護的JavaScript代碼161
8.1 一個實例161
8.2 重構:更容易測試的代碼165
8.2.1 搜索框166
8.2.2 發送請求167
8.2.3 結果集168
8.2.4 放在一起171
8.3 關注點分離:另一種實現方式174
8.3.1 搜索服務175
8.3.2 結果視圖175
8.3.3 搜索框視圖176
8.3.4 搜索邏輯176
8.3.5 放在一起177
8.3.6 更容易測試的代碼178

第9章 本地構建180
9.1 Ruby中的構建180
9.1.1 Rake180
9.1.2 Guard185
9.2 JavaScript中的構建187
9.2.1 Grunt的使用187
9.2.2 Gulp的使用192

第10章 持續集成196
10.1 環境搭建196
10.1.1 安裝操作系統196
10.1.2 安裝Jenkins199
10.1.3 安裝rbenv200
10.1.4 安裝NodeJS201
10.1.5 安裝Xvfb202
10.2 持續集成服務器203
10.3 與Github集成210
10.3.1 Travis211
10.3.2 Snap213

第11章 單元測試與集成測試215
11.1 RSpec單元測試215
11.2 集成測試工具Selenium221
11.2.1 Selenium—webdriver222
11.2.2 Capybara223
11.2.3 Cucumber224
11.3 搭建Selenium獨立環境230
11.3.1 安裝Selenium230
11.3.2 服務腳本230

第12章 環境搭建的自動化233
12.1 自動化工具Chef234
12.1.1 使用Berkshelf管理cookbook234
12.1.2 自動創建用戶236
12.1.3 安裝nginx服務器237
12.1.4 配置nginx239

第13章 應用程序發布244
13.1 使用Heroku發布應用程序244
13.2 發布到虛擬機環境249
13.2.1 使用密鑰登錄249
13.2.2 使用Mina250
13.3 服務器典型配置254

第14章 一個實例(前端部分)259
14.1 線框圖259
14.2 搜索結果頁面261
14.2.1 模板頁面262
14.2.2 導航欄263
14.2.3 走馬燈264
14.2.4 搜索框266
14.2.5 目錄側欄266
14.2.6 植物列表267
14.2.7 分頁器268
14.3 詳細信息頁面270
14.4 加入JavaScript271
14.4.1 moko273
14.4.2 AngularJS應用275
14.4.3 細節頁面279

第15章 一個實例(后台部分)283
15.1 第一個迭代284
15.1.1 配置環境284
15.1.2 定義數據285
15.1.3 第一次提交288
15.1.4 添加數據289
15.2 發布到Heroku291
15.2.1 環境准備292
15.2.2 添加數據庫插件292
15.2.3 測試遠程應用293
15.2.4 訪問遠程數據294
15.2.5 導出數據295
15.3 更進一步296
15.3.1 模塊化的Sinatra應用296
15.3.2 測試297

第16章 一個實例(集成)304
16.1 發布307
16.1.1 添加植物頁面308
16.1.2 一個奇怪的bug310
16.2 添加圖片313
16.2.1 后台API314
16.2.2 客戶端上傳文件315
16.3 新的問題321
16.4 文件存儲323
16.4.1 創建分組及用戶323
16.4.2 創建S3中的bucket325
16.4.3 存儲到雲端326
16.4.4 部署到Heroku328

附錄A Web如何工作330
A.1 CGI的相關背景330
A.2 配置Apache支持CGI331
A.3 更進一步332
A.4 一個稍微有用的腳本333
A.5 更進一步FastCGI334

附錄B Angular.js的測試335
B.1 測試Controller335
B.1.1 AngularJS的一個典型Controller335
B.1.2 測試依賴於Service的Controller336
B.1.3 在何處實例化Controller337
B.1.4 如何mock一個service338
B.2 測試Service339
B.2.1 Service的典型示例339
B.2.2 $httpBackend服務339
B.2.3 Service的測試模板341
B.2.4 服務器Moco342