Ajax實戰

Ajax實戰

Ajax實戰,作者為克拉恩·帕斯卡雷洛·傑姆斯。適用於擁有計算機科學學位和數年大型軟體項目實踐經驗的專業企業套用開發者,其中不僅有對於基礎知識的介紹,還有對於Ajax開發中重大的體系架構問題的深入探討,總結了大量Ajax開發中的設計模式,並討論了框架、安全性與性能等等。

基本信息

Ajax實戰

作者:(英)克拉恩,帕斯卡雷洛,傑姆斯 著,ajaxcn·org 譯

叢書名:圖靈程式設計叢書

ISBN:9787115147172

版次:1

市場價:¥69.00

頁數:501

字數:748000

開本:16開

媒體推薦

Ajax處在很多學科的交叉點上,讀者可以從很多方向殊途同歸。一方面,它適用於擁有計算機科學學位和數年大型軟體項目實踐經驗的專業企業套用開發者,有時候他們需要從城堡的垛口上探出頭來,做一些表示層的工作。另一個方面,它適用於已經從圖形設計轉向Web設計和“新媒體” 的專業創意設計人員,他們自學了如何使用諸如PHP、Visual Basic或者JavaScript/ ActionScript之類的腳本語言來編程。處在兩者之間的讀者可以是正在接受Web開發再培訓的桌面套用開發者、想要集成多種基於Web管理工具的系統管理員,以及其他很多人。

編輯推薦

本書闡述了Ajax開發技術的方方面面:不僅全面介紹了Ajax的基礎知識,更有對令人高山仰止的架構和模式的深刻探討,也有潺潺流水般細緻的實例展示,而且還涵蓋了專業Ajax開發必不可少的可用性、安全和性能等主題。本書適合程式開發人員參考學習。

本書是目前Ajax領域最為全面深入的一本著作,其中不僅有對於基礎知的的介紹,還有對於Ajax開發中重大架構問題的深入探討,總結了大量Ajax開發中的設計模式,並討論了框架、安全性與性能等。書中提供了幾個典型的例子,兼顧各種開發平台,這些例子的代碼稍作修改就司以直接套用於項目開發之中,代碼源檔案可以從圖靈網站下載。

本書適用於各個層次的web套用開發人員。

內容提要

本書是目前Ajax領域最為全面深入的一本著作,書中提供了幾個典型的例子,兼顧各種開發平台,這些例子的代碼稍作修改就可以直接套用於項目開發之中,代碼源檔案可以從圖靈網站下載。

本書內容廣泛且深入,同時適用於各個層次的Web套用開發人員。

作者簡介

Dave Crane英國資深Web開發人員,在智慧型家居、銀行和金融系統領域套用DHTML和Ajax等客戶端技術擁有豐富的經驗。

Eric Pascarello 資深ASP.NET開發人員,著名Java社區JavaRanch的 HTML與JavaScript版主。

Darren James 是開源Ajax框架的架構師。

目錄

第一部分 重新思考Web套用

第1章 一種新的Web設計方法

1.1 為什麼需要Ajax富客戶端?

1.1.1 比較用戶體驗

1.1.2 網路延遲

1.1.3 異步互動

1.1.4 獨占或瞬態的使用模式

1.1.5 忘掉Web

1.2 Ajax的四個基本原則

1.2.1 瀏覽器中的是套用而不是內容

1.2.2 伺服器交付的是數據而不是內容

1.2.3 用戶互動變得流暢而連續

1.2.4 有紀律的嚴肅編程

1.3 真實世界中的Ajax富客戶端

1.3.1 現狀

1.3.2 Google Maps

1.4 Ajax的替代方案

1.4.1 基於Macromedia Flash的方案

1.4.2 Java Web Start及其相關技術

1.5 小結

1.6 資源

第2章 Ajax新手上路

2.1 Ajax的關鍵元素

2.2 用JavaScript改善用戶體驗

2.3 用CSS定義套用的外觀

2.3.1 CSS選擇器

2.3.2 CSS樣式屬性

2.3.3簡單的CSS例子

2.4 用DOM組織視圖

2.4.1 使用JavaScript操作DOM

2.4.2 尋找DOM節點

2.4.3 創建DOM節點

2.4.4 為文檔增加樣式

2.4.5 捷徑:使用innerHTML屬性

2.5 使用XML技術異步載入數據

2.5.1 IFrame

2.5.2 XMLDocument和XMLHttpRequest對象

2.5.3 向伺服器傳送請求

2.5.4 使用回調函式監視請求

2.5.5 完整的生命周期

2.6 Ajax有何不同

2.7 小結

2.8 資源

第3章 使Ajax秩序井然

3.1 從混沌到秩序

3.1.1 模式:創造一個通用的辭彙

3.1.2 重構與Ajax

3.1.3 保持均衡

3.1.4 重構實戰

3.2 一些小型重構的案例研究

3.2.1 跨瀏覽器不一致性:Facade和Adapter模式

3.2.2 管理事件處理函式:Observer模式

3.2.3 重用用戶操作處理函式:Command模式

3.2.4 保持對資源的唯一引用:Singleton模式

3.3 模型-視圖-控制器

3.4 Web伺服器端的MVC

3.4.1 不使用模式的Ajax Web伺服器

3.4.2 重構領域模型

3.4.3 從表現中分離內容

3.5 第三方的庫和框架

3.5.1 跨瀏覽器庫

3.5.2 UI組件和UI組件套件

3.5.3 套用框架

3.6 小結

3.7 資源

第二部分 核心技術

第4章 作為套用的頁面

4.1一種不同類型的MVC

4.1.1 以不同的規模重複MVC模式

4.1.2 在瀏覽器端套用MVC

4.2 Ajax 套用中的視圖

4.2.1 將邏輯從視圖中分離

4.2.2 保持視圖與邏輯的分離

4.3 Ajax 套用中的控制器

4.3.1 傳統的JavaScript事件處理函式

4.3.2 W3C 事件模型

4.3.3 在JavaScript中實現靈活的事件模型

4.4 Ajax 套用中的模型

4.4.1 使用JavaScript為業務領域建模

4.4.2 與伺服器互動

4.5 從模型生成視圖

4.5.1 JavaScript對象的反射

4.5.2 處理數組和對象

4.5.3 添加控制器

4.6 小結

4.7 資源

第5章 伺服器的角色

5.1 與伺服器配合工作

5.2 編寫伺服器端代碼

5.2.1 流行的實現語言

5.2.2 N層體系架構

5.2.3 維護客戶端和伺服器端的領域模型

5.3 大局觀:通用的伺服器端設計

5.3.1 不使用框架進行簡單的Web伺服器編碼

5.3.2 使用Model2工作流框架

5.3.3 使用基於組件的框架

5.3.4 使用面向服務的體系架構

5.4 細節:交換數據

5.4.1 僅限於客戶端的互動

5.4.2 介紹行星瀏覽器的例子

5.4.3 從Web頁面的角度思考:以內容為中心的互動

5.4.4 從外掛程式的角度思考:以腳本為中心的互動

5.4.5 從套用的角度思考:以數據為中心的互動

5.5 向伺服器寫數據

5.5.1 使用HTML表單

5.5.2 使用XMLHttpRequest對象

5.5.3 有效地管理用戶的更新

5.6 小結

5.7 資源

第三部分 專業級的Ajax

第六章 用戶體驗

6.1 做正確的事:開發高質量的套用

6.1.1 回響性

6.1.2 健壯性

6.1.3 一致性

6.1.4 簡單性

6.1.5 付諸實踐

6.2 讓用戶知情

6.2.1 處理自己請求的回響

6.2.2 處理其他用戶提交的更新

6.3 為Ajax設計通知系統

6.3.1 對通知建模

6.3.2 定義用戶界面需求

6.4 實現通知框架

6.4.1 顯示狀態欄圖示

6.4.2顯示詳細的通知信息

6.4.3 集成

6.5使用通知框架處理網路請求

6.6 表示數據的時效性

6.6.1定義簡單的突出顯示格式

6.6.2 用Scriptaculous效果庫進行突出顯示

6.7 小結

6.8 資源

第7章 安全性與Ajax

7.1 JavaScript與瀏覽器安全性

7.1.1 引入來源伺服器策略

7.1.2 Ajax的相關考慮

7.1.3 子域問題

7.1.4 跨瀏覽器安全性

7.2 使用遠程服務進行通信

7.2.1 代理遠程服務

7.2.2 使用Web服務

7.3 保護機密數據

7.3.1 中間人

7.3.2 使用安全HTTP

7.3.3 在普通HTTP上使用JavaScript加密數據

7.4 Ajax數據流的訪問策略

7.4.1 設計安全的Web層

7.4.2 限制對Web數據的訪問

7.5 小結

7.6 資源

第8章 性能

8.1 什麼是性能?

8.2 JavaScript執行速度

8.2.1 測定套用時間的艱難方式

8.2.2 使用Venkman性能分析器

8.2.3 最佳化Ajax套用的執行速度

8.3 JavaScript記憶體使用量

8.3.1 避免記憶體泄漏

8.3.2 Ajax的特殊考慮因素

8.4 考慮性能的設計

8.4.1 測量記憶體使用量

8.4.2簡單示例

8.4.3 結果:如何將記憶體使用量縮減150倍

8.5 小結

8.6 資源

第四部分 Ajax實例研究

第9章 動態雙組合功能

9.1 雙組合腳本

9.1.1 客戶端解決方案的局限性

9.1.2 伺服器端解決方案的限制

9.1.3 基於Ajax的解決方案

9.2 客戶端體系架構

9.2.1 設計表單

9.2.2 設計客戶端/伺服器端互動

9.3 伺服器端的VB.NET實現

9.3.1 定義XML回響格式

9.3.2 編寫伺服器端代碼

9.4 顯示結果

9.4.1 遍歷XML文檔

9.4.2 套用CSS

9.5 高級問題

9.5.1 允許多選擇查詢

9.5.2 將雙組合擴展為三組合

9.6 重構

9.6.1 新的和改進過的net.ContentLoader

9.6.2 創建雙組合組件

9.7 小結

第10章 輸入前提示

10.1 考察輸入前提示套用

10.1.1 常見的輸入前提示的特徵

10.1.2 Google Suggest

10.1.3 實戰開發Ajax輸入前提示

10.2 伺服器端框架:C#

10.2.1 伺服器與資料庫

10.2.2 測試伺服器端代碼

10.3 客戶端框架

10.3.1 HTML

10.3.2 JavaScript

10.3.3 訪問伺服器

10.4 添加功能:包含不同查詢的多個元素

10.5 重構

10.5.1 第一天:開發TextSuggest組件的遊戲計畫

10.5.2 第2天:創建TextSuggest――清晰而且可配置

10.5.3 第3天:激活Ajax

10.5.4 第4天:事件處理

10.5.5 第5天:提示的彈出框的UI

10.5.6 重構報告

10.6 小結

第11章 增強的Ajax Web門戶

11.1 正在進化的門戶

11.1.1 傳統門戶

11.1.2 擁有豐富的用戶界面的門戶

11.2 使用Java的Ajax門戶的體系架構

11.3 Ajax登錄

11.3.1 用戶表

11.3.2 伺服器端的登錄代碼:用Java實現

11.3.3 客戶端登錄框架

11.4 實現DHTML視窗

11.4.1 門戶視窗資料庫

11.4.2 門戶視窗的伺服器端代碼

11.4.3 添加外部JS庫

11.5 添加Ajax自動保存功能

11.5.1 修改庫的代碼

11.5.2 自動保存信息到資料庫

11.6 重構

11.6.1 定義構造器

11.6.2 修改AjaxWindows.js庫

11.6.3 指定protal命令

11.6.4 執行Ajax處理

11.6.5 重構報告

11.7 小結

第12章 使用XSLT的動態搜尋

12.1 理解搜尋技術

12.1.1 考察傳統的搜尋

12.1.2 幀和彈出視窗方法的缺點

12.1.3 研究使用Ajax和XSLT的動態搜尋

12.1.4 向客戶端發回結果

12.2 客戶端的代碼

12.2.1 設定客戶端

12.2.2 啟動搜尋過程

12.3 伺服器端的PHP代碼

12.3.1創建XML文檔

12.3.2 創建XSLT文檔

12.4 合併XSLT和XML文檔

12.4.1 使用微軟的IE

12.4.2 使用Mozilla

12.5 完成搜尋

12.5.1 套用層疊樣式表

12.5.2 改善搜尋

12.5.3 決定使用XSLT

12.5.4 克服Ajax書籤支持的缺陷

12.6 重構

12.6.1 XSLTHelper

12.6.2 動態搜尋組件

12.6.3 重構報告

12.7 小結

第13章 使用AJAX創建獨立的套用

13.1 從外部讀取信息

13.1.1 查找XML提要

13.1.2 RSS結構

13.2 創建豐富的用戶界面

13.2.1 流程

13.2.2 不使用表格的HTML框架

13.2.3 採用CSS方法做排版

13.3 載入RSS提要

13.3.1 全局作用域

13.3.2 Ajax預載入功能

13.4 增加豐富的漸變效果

13.4.1 跨瀏覽器的不透明規則

13.4.2 實現淡入/淡出漸變

13.4.3 集成JavaScript定時器

13.5 附加功能

13.5.1 插入額外提要

13.5.2 集成跳過和暫停功能

13.6 避免項目的限制

13.6.1 克服Mozilla的安全限制

13.6.2 修改套用的範圍

13.7 重構

13.7.1 RSS閱讀器模型

13.7.2 RSS閱讀器視圖

13.7.3 RSS閱讀器控制器

13.7.4 重構報告

13.8 小結

附錄A Ajax工具箱

A.1 選擇正確的工具集更加聰明地工作

A.1.1 獲取適合的工具

A.1.2 創建自己的工具

A.1.3 維護工具箱

A.2 編輯器和IDE

A.2.1 在代碼編輯器中需要什麼功能

A.2.2 當前的工具

A.3 調試器

A.3.1為什麼要使用調試器

A.3.2 JavaScript調試器

A.3.3 HTTP 調試器

A.3.4創建自己的跨瀏覽器輸出控制台

A.4 DOM 檢查器

A.4.1 使用Mozilla DOM 檢查器

A.4.2 IE的DOM 檢查器

A.5 安裝Firefox擴展

A.6 資源

附錄B 面向對象程式設計師的JavaScript

B.1 JavaScript不是Java

B.2 JavaScript中的對象

B.2.1創建一個開箱即用(ad hoc)的對象

B.2 .2 構造函式、類和原型

B.2.3 擴展內建類

B.2.4 原型的繼承

B.2.5 JavaScript對象的反射

B.2.6 接口和“鴨子類型”

B.3 方法和函式

B.3.1 函式是一等公民

B.3.2 向對象附加函式

B.3.3 從其他對象借用函式

B.3.4 Ajax事件處理和函式上下文

B.3.5 JavaScript中的閉包

B.4 小結

B.5 資源

附錄C Ajax框架和庫

相關詞條

相關搜尋

熱門詞條

聯絡我們