大規模Webアプリケーション開発入門

[cover photo]
TOPICS
Web , HTML/CSS , JavaScript , PHP
発行年月日
PRINT LENGTH
320
ISBN
978-4-87311-492-7
原書
Developing Large Web Applications
FORMAT
PDF
Ebook
3,080円
Ebookを購入する

本書は、後の機能追加や変更を想定してWeb開発を行う際に、HTML、CSS、JavaScript+Ajax、PHP、そしてデータ管理やパフォーマンスなど、Webアプリケーションを構成する各レイヤで考慮すべきことを包括的に解説する書籍です。変化に強く、大規模化に対応できるWeb開発の原則となるモジュール化やカプセル化、保守性およびパフォーマンスの維持を、簡単なサンプルWebアプリケーションの開発を行いながら習得します。本格的にWebアプリケーション開発を学びたいエンジニアに最適な一冊です。

関連ファイル

目次

監訳者まえがき
まえがき
はじめに
1章 大規模Webアプリケーション開発の原則
    1.1 複雑さへの対処
    1.2 モジュール式コンポーネント
        1.2.1 モジュール性の実現
        1.2.2 モジュール性のメリット
    1.3 大規模Webアプリケーションのための10の原則
2章 オブジェクト指向
    2.1 OOPの基本
    2.2 なぜオブジェクト指向なのか?
    2.3 UMLクラス図
        2.3.1 汎化
        2.3.2 関連
    2.4 Webページのモデリング
        2.4.1 ページ型の定義
        2.4.2 モジュール型の定義
    2.5 コードの記述
    2.6 モジュール性の実現
    2.7 オブジェクト指向PHP
        2.7.1 クラスとインタフェース
        2.7.2 PHPにおける継承
    2.8 オブジェクト指向JavaScript
        2.8.1 オブジェクト
        2.8.2 JavaScriptでの継承
3章 HTML
    3.1 モジュール式HTML
        3.1.1 悪い例:tableとプレゼンテーションマークアップの使用
        3.1.2 優れた例:CSSの利用
        3.1.3 最良の例:意味的有意性を持つHTML
        3.1.4 優れたHTMLのメリット
    3.2 HTMLタグ
        3.2.1 不適切なHTMLタグ
        3.2.2 適切なHTMLタグ
        3.2.3 ID、クラス、名前
        3.2.4 命名規則
    3.3 XHTML
        3.3.1 XHTMLの利点
        3.3.2 XHTMLの指針
    3.4 RDFa
        3.4.1 RDFaトリプル
        3.4.2 RDFaの適用
    3.5 HTML5
4章 CSS
    4.1 モジュール式CSS
        4.1.1 CSSの取り入れ
        4.1.2 CSSの適用
        4.1.3 詳細度と重要度
        4.1.4 CSSでのスコーピング
        4.1.5 標準モジュールフォーマット
    4.2 ポジショニングの手法
        4.2.1 CSSボックスモデル
        4.2.2 文書フロー
        4.2.3 相対位置配置
        4.2.4 絶対位置配置
        4.2.5 フローティング
    4.3 レイアウトとコンテナ
        4.3.1 レイアウトの例
        4.3.2 コンテナの例
    4.4 その他の実践手法
        4.4.1 ブラウザリセットCSS
        4.4.2 フォント正規化
5章 JavaScript
    5.1 モジュール式JavaScript
        5.1.1 JavaScriptの取り入れ
        5.1.2 JavaScriptでのスコーピング
    5.2 DOMの扱い
        5.2.1 一般的なDOMメソッド
        5.2.2 有名なDOMライブラリ
    5.3 イベントの扱い
        5.3.1 イベント処理の正規化
        5.3.2 悪い例:イベントハンドラのグローバルデータ
        5.3.3 優れた例:イベントハンドラのオブジェクトデータ
        5.3.4 イベント駆動型アプリケーション
    5.4 アニメーションの扱い
        5.4.1 モーションアニメーション
        5.4.2 サイジングアニメーション
        5.4.3 色の遷移
    5.5 例:連鎖型選択リスト
6章 データ管理
    6.1 動的モジュール
    6.2 データマネージャ
        6.2.1 データマネージャの作成
        6.2.2 データマネージャの拡張
    6.3 SQLをソースとして使ったデータ
        6.3.1 SQLの例
    6.4 XMLをソースとして使ったデータ
        6.4.1 XMLの例
    6.5 Webサービスからのデータ
    6.6 JSON形式のデータ
    6.7 Cookieとフォーム
        6.7.1 Cookie内のデータの管理
        6.7.2 フォームデータの管理
7章 PHP
    7.1 モジュール式Webページ
        7.1.1 PHPでのページの生成
    7.2 ページの扱い
        7.2.1 Pageクラスのpublicインタフェース
        7.2.2 Pageクラスの抽象インタフェース
        7.2.3 Pageクラスの実装
        7.2.4 Pageクラスの拡張
    7.3 モジュールの扱い
        7.3.1 Moduleクラスのpublicインタフェース
        7.3.2 Moduleクラスの抽象インタフェース
        7.3.3 Moduleクラスの実装
        7.3.4 Moduleクラスの拡張
        7.3.5 モジュールの例:スライドショー
    7.4 レイアウトとコンテナ
    7.5 考慮すべき特殊事項
        7.5.1 モジュールのバリエーションへの対応
        7.5.2 モジュールの複数のインスタンス
        7.5.3 動的なJavaScriptとCSS
        7.5.4 入れ子になったモジュールの実装
8章 Ajax
    8.1 ブラウザ側の処理
        8.1.1 接続の管理
        8.1.2 Ajaxライブラリの利用
    8.2 サーバ側の処理
        8.2.1 交換形式
        8.2.2 サーバプロキシ
        8.2.3 モジュール式Ajax
    8.3 MVCとAjax
        8.3.1 MVCを使ったAjaxの利用
        8.3.2 Modelオブジェクトのpublicインタフェース
        8.3.3 Modelオブジェクトの実装
        8.3.4 Viewオブジェクトのpublicインタフェース
        8.3.5 Viewオブジェクトの抽象インタフェース
        8.3.6 Viewオブジェクトの実装
        8.3.7 Connectオブジェクトのpublicインタフェース
        8.3.8 Connectオブジェクトの抽象メソッド
        8.3.9 Connectオブジェクトの実装
        8.3.10	コントローラ
        8.3.11	MVCを使ったAjaxの例:アコーディオンリスト
9章 パフォーマンス
    9.1 キャッシュの使いどころ
        9.1.1 CSSとJavaScriptのキャッシュ
        9.1.2 モジュールのキャッシュ
        9.1.3 ページのキャッシュ
        9.1.4 Ajaxを使ったキャッシュ
        9.1.5 Expiresヘッダの利用
    9.2 JavaScriptの管理
        9.2.1 JavaScriptの配置
        9.2.2 JavaScriptの最小化
        9.2.3 重複の削除
    9.3 資産の分散
        9.3.1 コンテンツデリバリネットワーク
        9.3.2 DNSルックアップの最小化
        9.3.3 HTTPリクエストの最小化
    9.4 サイト評価指標の管理
    9.5 モジュールテスト
        9.5.1 テストデータの利用
        9.5.2 テストデータの作成
10章 アプリケーションアーキテクチャ
    10.1 モジュール式の考え方
    10.2 コンポーネントの構成
        10.2.1 サイト全体に及ぶアーキテクチャ
        10.2.2 セクションのアーキテクチャ
        10.2.3 ページのアーキテクチャ
    10.3 アーキテクチャと保守
        10.3.1 モジュールの用途の再編
        10.3.2 モジュールのバリエーションの追加
        10.3.3 広範囲に及ぶ変更
        10.3.4 データソースの変更
        10.3.5 外部へのモジュールの公開
索 引