翔泳社の公式通販SEshopは全国送料無料!
ヘルプ 新規会員登録 ログイン
SEshop

Webアプリケーション設計・実装のためのフレームワーク活用の技術

古川 正寿(著) , 早川 順(著)

商品番号
115780
販売状態
品切れ
納品形態
宅配便にてお届け
発売日
2008年11月17日
出荷開始日
2008年11月18日
ISBN
9784798115788
判型
B5変
ページ数
350
キーワード
プログラミング  開発  エンジニア

3,608円(税込)(本体3,280円+税10%)
送料無料

328pt (10%)
ポイントの使い方はこちら

初回購入から使えるポイント500円分プレゼント

現在、本商品は販売しておりません。

※1点の税込金額となります。 複数の商品をご購入いただいた場合のお支払金額は、 単品の税込金額の合計額とは異なる場合がございますので、予めご了承ください。

フレームワーク活用の「ツボ」がわかる!

本書はWebアプリケーションの設計・開発におけるフレームワークの利用について解説したものです。Webアプリケーション開発では、MVC(Model/View/Controller)や3層アーキテクチャなどを採用した開発の枠組み(フレームワーク)が用いられます。本書はそのフレームワークの思想に沿ったアプリケーションの設計とプログラミングを実践的に解説するものです。フレームワークの狙いはどこにあるのか、効率的な開発と改修のためにはどう考えていくべきなのかを学ぶことができます。また、サンプルとしてS2StrutsによるJavaのアプリケーションを提供していることも本書の大きな特徴です。
筆者のシステム開発者、インストラクターとしての経験を活かし、さまざまな現場で応用可能な基本的技法をやさしく身に付けられます。

第1章 イントロダクション―エンジニアのスキルとフレームワーク

1.1 開発現場の現状
1.1.1 「人材とスキル」、ダブルの不足
1.1.2 エンジニアのスキルの基準を考える
1.1.3 まったく新しいテクノロジはない
1.1.4 「知っている」から「使いこなせる」へ
COLUMN 優秀な人間が集まればよいか
1.2 フレームワーク
1.2.1 フレームワーク登場の背景
COLUMN 良い設計/良いプログラミングには、どんな良いことがあるのか
1.2.2 フレームワークを使いこなすための前提知識
1.2.3 認識不足の現場
COLUMN これからのエンジニアは評価力、調達力、英語力
1.3 本書のメッセージ
1.3.1 レイヤの意味と役割
1.3.2 レイヤごとのデザインパターン(設計方法)
1.3.3 フレームワークをより深く理解する
1.3.4 アプリケーション作成の1つのスタイル
1.3.5 情報をどのように考え、扱うか
1.4 本書のメッセージを理解するために必要な知識

第2章 フレームワークの基本―MVCモデル

2.1 初期のMVCモデル(パターン)
2.1.1 基本構造
COLUMN ソフトウェアにおける部品の考え方
2.1.2 相互関係のルール
2.1.3 MVCモデルのメリットとデメリット
2.2 アーキテクチャパターン
2.2.1 アーキテクチャパターンの概要
2.2.2 Layers(階層)パターン
COLUMN BCEモデル
2.3 WebアプリケーションのMVCモデル
2.3.1 基本構成と概要
2.3.2 各オブジェクトの役割
COLUMN EoD(Easy of Development) 2.3.3 より鮮明に関係と流れをイメージする
2.4 システム設計視点で見るレイヤ(層)
2.5 実際はどうするか
2.6 階層化とフレームワーク
2.7 サンプルアプリケーションと動作環境
2.7.1 本書で扱うサンプルの概要
2.7.2 機能詳細
2.7.3 開発/動作環境
2.7.4 サンプルアプリケーションのダウンロードとセットアップ

第3章 プレゼンテーション層(ビューレイヤ)

3.1 プレゼンテーション(ビューレイヤ)の概要
3.2 プレゼンテーション層は何をしているのか
3.2.1 Webコンテナが受信したHTTPリクエストを受ける
3.2.2 ロジックに処理要求を伝える
3.2.3 レスポンス(HTML)を生成してWebコンテナに渡す
COLUMN 初めてWebアプリケーションを生成すると
3.3 プレゼンテーションがうまく設計/実装できない
3.3.1 役割がはっきりしないアプリケーションの構造
3.3.2 役割がはっきりしないとどうなるか
3.3.3 このような場合はどうするか?
3.3.4 プログラム構成を考え直す
3.4 パターンを使った機能の分割
3.4.1 Front ControllerパターンとApplication Controllerパターン
3.4.2 Strutsフレームワークのアーキテクチャ
3.5 サンプルで利用するフレームワーク
3.5.1 S2Strutsの概要
3.6 サンプルの設計/実装
3.6.1 画面レイアウトと画面遷移を設計する
3.6.2 「予約状況検索」を設計する
3.6.3 「予約状況検索」のクラス構造を設計する
3.6.4 「予約状況検索」の実装を確認する
3.6.5 「会議室予約」を設計する
3.6.6 「会議室予約」のクラス構造を設計する
3.6.7 「会議室予約」の実装を確認する
3.7 まとめ

第4章 ロジックレイヤ

4.1 ロジックレイヤの役割
4.2 ロジックレイヤの設計ポイント
4.2.1 ビューからロジックを分離する
4.3 ロジックレイヤと他のレイヤ間とのデータの受け渡し
4.3.1 DTOパターン(データの入れ物)
4.3.2 コンバータ(データを変換するもの)
4.3.3 ビューレイヤとロジックレイヤ間のデータ受け渡し
4.3.4 ロジックレイヤとデータアクセスレイヤ間のデータ受け渡し
4.4 ロジックレイヤを構成するバリエーション
4.4.1 ロジックをデータと分離するパターン
4.4.2 ロジックをデータと一緒にするパターン
4.4.3 2つのパターンについて
4.5 サンプル
4.5.1 予約登録ロジック
4.5.2 検索結果表示用のオブジェクトに変換する
4.6 まとめ

第5章 データアクセスレイヤ

5.1 データアクセスレイヤの役割
5.2 DAOパターンによるデータアクセス
5.2.1 DAOの役割
5.2.2 VALUEの役割
5.3 参照系機能
5.3.1 全オブジェクトをリストで取得する機能
5.3.2 指定されたIDを持つオブジェクトを取得する機能
5.3.3 検索条件に応じたオブジェクトを検索し、リストで取得する機能
5.4 更新系機能
5.4.1 オブジェクトを登録する機能
5.4.2 オブジェクトを変更する機能
5.4.3 オブジェクトを削除する機能
5.5 共通機能
5.6 オブジェクト同士の関連を構築して取得する
5.6.1 関連を取得する際に考えるべきこと
5.6.2 パターン1:データアクセスを利用する側で複数のDAOを呼び出す
5.6.3 パターン2:DAO自身が関連する別のDAOを呼び出す
5.6.4 パターン3:オブジェクトの構築を行う専用のクラスを用意して複数のDAOを呼び出す
5.7 オブジェクト同士の関連の構造を格納する
5.7.1 関連を格納する際に考えるべきこと
5.7.2 パターン1:オブジェクト自身が対応するDAOを呼び出す
5.7.3 パターン2:ロジックやビューなど、データアクセスを利用する側で複数のDAOを呼び出す
5.8 悪い設計
5.9 O/Rマッパー
5.9.1 O/Rマッパーを利用したDAOパターン
5.9.2 O/Rマッパーを利用する場合の注意点
5.9.3 S2DaoによるDAOパターンとその特徴
5.10 サンプル
5.10.1 準備
5.10.2 サンプルの構成
5.10.3 予約情報Beanの作成
5.10.4 予約情報テーブルのDAOの作成
5.10.5 予約情報DAOをSeasarにコンポーネントとして登録
5.10.6 予約情報テーブルのDAOテストクラスを作成
5.10.7 予約情報DAOの確認
5.10.8 指定されたIDを持つ予約情報を取得する
5.10.9 検索条件に応じた予約情報をリストで検索する
5.10.10 関連の取得
5.10.11 複数のDAOを利用した格納とトランザクション制御
5.11 まとめ

第6章 レイヤリングを支える技術―DIコンテナとAOP

6.1 DIコンテナが解決する問題点とその仕組み
6.1.1 依存性という問題
6.1.2 依存性という問題を解決する
6.1.3 DIコンテナによる依存性の解決
6.2 DIコンテナの基本機能
6.2.1 インスタンス管理と「依存性注入」の方法
6.2.2 設定ファイルの基本とインジェクション
6.2.3 DIコンテナによるオブジェクトの生成と組み立て
6.2.4 オブジェクトのライフサイクル
6.3 AOP(アスペクト指向プログラミング)
6.3.1 「横断的関心事」とは何か
6.3.2 アスペクトと機能のウィーブ(織り込み)
6.3.3 DIコンテナが提供するアスペクト指向の機能
6.3.4 AOPの設定と利用
6.4 DIコンテナが提供するテストのしやすさ
6.4.1 Seasar2が提供する拡張機能
6.5 まとめ

第7章 レイヤリングとアプリケーション構造

7.1 目指すべきアプリケーション構造
7.2 レイヤ構成とオブジェクトの配置・連携の指針
7.2.1 一覧表示/検索表示のパターン
7.2.2 登録/変更のパターン
7.3 アプリケーションの複雑さに応じたレイヤ構成
7.3.1 簡単な機能の場合
7.3.2 複雑な機能の場合
7.4 サンプル
7.4.1 予約状況の一覧(ビューヘルパーの利用)
7.5 まとめ

各種問い合わせは以下のリンクからご連絡ください

感想・レビュー

らう さん

2010-04-04

プレゼン層、ロジック層、データアクセス層それぞれの設計、PGの具体例を掲載している。DBアクセスはTBL単位にクラス化するとかロジックとDAO/DTOを分ける/分けないなど設計で悩み勝ちな点もサポートされてる。Seaserフレームワークも使っていて実践的な例が豊富。

susue さん

2015-08-25

seaser2入門として

トルネードG&T さん

2019-05-10

Webアプリケーションフレームワーク指南書。なのだが、使っている言語がJavaな上に著者は応用書と位置付けているためJavaで利用されるフレームワークアプリケーションの話がかなり出てきてしまい、Railsを期待していた側としてはかなり読みにくかった。MVCの説明はあるものの主な枠組みとして扱われる3層アプリだとRailsでいうVCがひとつにまとまってる上にMが二分割ということに。ただひとつわかったのはWebアプリの基盤となる面倒な話がRailsだとかなりフレームワーク側で解決されているということ。

関連商品

おうちで学べる Pythonのきほん

2,420円(税込)

2024.05.20発売

おうちで学べる Pythonのきほん【PDF版】

2,420円(税込)

2024.05.20発売

おすすめ特集

法人・教育機関のお客様へ

【法人・教育機関のお客様へ】新年度の大口注文・お見積りなど、お気軽にご相談ください

Webデザイン特集

デザインやコーディングなど、Webデザインに役立つスキルが身につく書籍を揃えました

生成AI特集

テキスト生成、画像生成、動画生成など、生成AI活用のスキルが身につく本をご紹介

新社会人におすすめの本

新社会人の役に立つスキルが身につく本。ビジネスパーソンとしてスタートダッシュを切ろう!

プログラミング教育の本

小学校から必修化!人気の『ルビィのぼうけん』ほかプログラミング教育の本はこちら

翔泳社のセミナー・講座

開発・ビジネス・マーケティング・EC運営・営業支援など、幅広いジャンルの講座を開催

特集をもっと見る