具体的なコードを用いて、Ajaxによって新たに広がった技術的な展望への理解を深めながら、Ajaxが機能する仕組みを掘り下げます。DHTMLやJavaScript、XmlHttpRequestなどAjaxの基礎からはじめて、既存のアプリケーションやサービスをAjax化するためのテクニックや、Web2.0なアプリケーションを新たに開発するための設計方法のほか、Ajaxによって開かれた現在の先に見えつつある技術的な将来展望についても議論しています。Webアプリケーション開発に必須の技術となるAjaxを基礎から理解し、応用するためのアイデアとテクニックをまとめた開発者のための実践ガイドです。
実践 Ajax
―Web2.0アプリケーション開発への手引き
Justin Gehtland, Ben Galbraith, Dion Almaer 著、宮川 達彦 監訳、加藤 慶彦 訳
- TOPICS
- Programming , Web
- 発行年月日
- 2006年10月
- PRINT LENGTH
- 276
- ISBN
- 4-87311-301-6
- 原書
- Pragmatic Ajax
- FORMAT
目次
1章 Ajaxによるリッチなインターネットアプリケーションの構築 1.1 3幕の物語 昨日 今日 明日 1.2 Google Maps:起爆剤 1.3 Ajaxとは Ajax:Asynchronous JavaScript and XML Ajax:アーキテクチャ Ajax:その未来 1.4 この本で学ぶこと 2章 Google Mapsを作ろう 2.1 ロケット科学者の仕業? 2.2 独自に作るGoogle Maps Google Mapsを解剖する 2.3 Ajaxな地図を作る 使用するブラウザについて ステップ1:地図を作る ステップ2:タイルを作る ステップ3:内側のdivと外側のdivを作る ステップ4:地図をドラッグ可能にする ステップ5:地図のタイルを表示する ステップ6:ズーム機能を追加する ステップ7:マーカーと情報ダイアログ 2.4 まとめ 3章 Ajaxの仕組み 3.1 WebアプリケーションのAjax化 3.2 Ajaxによる救急措置 UIのAjax化 HTMLの整備 サーバとの通信 レスポンスの解析 全体をひとつにまとめる 全体像 3.3 その他の諸問題 クロスブラウザの問題 エラー対策 同期Ajax? ネットワークレイテンシ 3.4 まとめ 4章 Ajaxプリミティブ 4.1 JavaScript概説 JavaScriptの基礎 関数 関数型 JavaScriptイベント:ページとの結び付け イベントの定義 4.2 Webページの操作 縁の下のXML XMLの変更:DOM API DOMのショートカット 属性 4.3 データの取得 XMLHttpRequest XMLHttpRequest詳説 4.4 まとめ 5章 Ajaxフレームワーク 5.1 フレームワーク、ツールキット、ライブラリ リモーティングツールキット UI ツールキット JavaScriptをベースとした効果 AjaxなWebフレームワーク 5.2 Dojo Toolkitでのリモーティング Dojo Toolkitとは dojo.io.bind()に移行する 戻り型にJavaScriptを使うようdojo.io.bind()を変更する dojo.io.bind()の高度な機能 ブラウザの「戻る」ボタンと「進む」ボタンのサポート その他のオプション:method、content、postContent、sync、useCache 5.3 Prototypeライブラリによるリモーティング Prototypeに移行する 5.4 まとめ 6章 Ajaxなユーザインタフェイス(1) 6.1 AjaxとJavaScriptとUI DOMを越えてオブジェクト指向を促進するAjax 代表的なUIフレームワーク Prototype 一般的な型に対する拡張 Element データの挿入 フォーム 位置 Script.aculo.us エフェクト 不透明度 移動 サイズ変更 ハイライト 並列エフェクト 複合エフェクト 高度なテクニック Dojo アニメーション エフェクト 6.2 まとめ 7章 Ajaxなユーザインタフェイス(2) 7.1 Ajaxの標準的な利用法 処理中のフィードバック 更新時のフィードバック オートコンプリート 7.2 UIのAjax化におけるアンチパターン 「戻る」ボタンに要注意 Webを特徴づけるブックマーク GETはgetのため、POSTはdoのため 処理中はユーザに通知を 新奇さの誘惑に注意 7.3 まとめ 8章 Ajaxアプリケーションのデバッグ 8.1 ソースの表示 8.2 DOMインスペクタ FirefoxのDOMインスペクタ SafariのDebugメニューとDOMインスペクタ Debugメニューを表示させる IEのDeveloper ToolbarとDOMインスペクタ 生のソース表示 Firefoxのプラグイン Mouseover DOM Inspector 8.3 JavaScriptのデバッグ 構文エラー Internet Explorer Firefox Safari MochiKit Interpreter 動作エラー アラート過剰症 MochiKitのロギング機能 ステップデバッグ Firefoxでのステップデバッグ IEでのステップデバッグ Safariでのステップデバッグ 8.4 まとめ 9章 デグレード可能なAjax 9.1 デグレード可能なAjaxとは デグレードして機能し続ける 完全に拒否する 対象を絞り込む デグレード == 完全 || クラッシュ回避 9.2 デグレード可能なAjaxアプリケーションを確実に機能させるには 従来型のWebアプリケーションをAjax化する サブミットボタンを消す フォームのサブミットを防止する ToDo項目を送信する Ajaxバージョンのまとめ Behaviourを使ってコードを整理する Behaviourを使う HTMLでのデグレード 非Ajax向けに付け加える Ajax向けにフィルタをかける HTML以外でのデグレード Webサービス駆動型Ajax 9.3 まとめ 10章 JSONとJSON-RPC 10.1 JSON-RPC JSON on Rails サーバサイド クライアントサイド 11章 サーバサイドフレームワークインテグレーション 11.1 インテグレーションのための各種の戦略 ビジュアル開発ツール ヘルパータグ ORBライクなリモーティング 12章 PHPでのAjax 12.1 PHPフレームワーク 12.2 Sajax Sajaxとは Sajaxへの移植 バックエンドの関数を作る Sajaxを使う Sajaxの欠点 12.3 XOAD 手続き型からオブジェクト指向へ バックエンドに変更を加える 再びフロントエンドへ リッチな型を返す XOADのその他の機能 12.4 まとめ 13章 RailsでのAjax 13.1 Ruby on Railsのアーキテクチャ コントローラとアクション RHTML ヘルパ 13.2 RailsにおけるAjax統合 基本ヘルパ ObserverとUpdater その他の各種ヘルパ ヘルパを使って書き換える 郵便番号フィールドを監視する 郵便番号フィールドを監視する別の方法 フィールドのオートコンプリート 13.3 RJSテンプレート 14章 JavaでのプロキシベースのAjax 14.1 DWR DWRサーブレットをプロジェクトに追加する DWR用の設定ファイルを作る DWR用のJavaScriptをHTMLに追加する DWRの設定の詳細 オブジェクトのスコープ DWRとインスタンス化 オブジェクトのライフサイクル 任意のオブジェクトをDWRでリモーティングする 14.2 まとめ 15章 ASP.NETでのAjax 15.1 BorgWorX 15.2 Atlas Atlasを使ってみる JavaScriptの「改善」 コンポーネント 15.3 まとめ 16章 Ajaxのこれから 16.1 データ操作 E4X 16.2 UI操作 >canvas<タグ >canvas<を使ったデモプログラム IEという障害 SVG SVGと>canvas< 16.3 将来予測 ブラウザのローカルストレージ機能 Dojoでのオフラインストレージ Dojoについて Flashと「Apollo」 コンパイル型のJavaScript W3Cの新たな人生 16.4 まとめ 索引