旧版・『プロになるためのWeb技術入門』との違いについて
目次
- Lesson0 プロローグ
- Lesson1 「Webアプリケーション」とは何か
- Lesson2 Webはどのように発展したか
- Lesson3 HTTPを知る
- Lesson4 CGIからWebアプリケーションへ
- Lesson5 Webアプリケーションの構成要素
- Lesson6 Webアプリケーションを効率よく開発するための仕組み
- Lesson7 セキュリティを確保するための仕組み
- Lesson8 おわりに
- Lesson9 付録
本書は、2010年4月に発売した『プロになるためのWeb技術入門 ――なぜ,あなたはWebシステムを開発できないのか』(以下、旧版)の改訂新版という位置づけですが、全編新規に書き下ろしたものです。 当初、本書では第2章の「図2-22 Webシステムを実現するための技術」(43ページ)に示した技術全体について解説する予定でした。 しかし一冊で解説するには紙面が不足してしまったため、ここまでの内容を一区切りとしました。 そのため、旧版では解説していたのに本書では触れていないテーマや、本書では触りを触れる程度に留まってしまったテーマも数多くあります。 読者の皆さんの中には、物足りなさを感じた方もいらっしゃる方も多いかもしれません。 今回書き切れなかったテーマについては、できるだけ早く続編として執筆を進める予定です。
旧版の章構成を基準として、本書との対応関係を説明します。 旧版ではJavaを前提とした説明が多くなっていましたが、本書ではなるべくプログラミング言語に依存しない説明となるようにしています。
- Lesson1 「Webアプリケーション」とは何か
-
Webアプリケーションはすでに一般的なものとなっため、本章に対応する説明は割愛しました。
- Lesson2 Webはどのように発展したのか
-
「3章 WWWの基本要素とその発展」が対応します。 旧版ではCGIからサーブレット/JSP、フレームワークへの発展の流れとして説明しましたが、サーブレット/JSPはJava固有の技術要素であるため、本書では触れていません。 サーブレットは「サーバサイドアプリケーションがHTMLを返すための技術」、JSPは「テンプレートエンジン」であるため、それぞれ一般化して4章、6章で触れています。
- Lesson3 HTTPを知る
-
「4章 HTTPクライアントとHTTPサーバ」「5章 URLとHTTP」が対応します。 なお、旧版「3.3 情報はどうやってインターネットの大海原を越えるのか」では、インターネットの仕組みを簡単に紹介していました。 本書では、「付録A.6 IPアドレスとドメイン名」「付録A.7 TCP/IP」で触れています。
- Lesson4 CGIからWebアプリケーションへ
-
「6章 従来型のWebアプリケーション」が対応します。
- Lesson5 Webアプリケーションの構成要素
-
旧版で解説していたリレーショナルデータベースについては、本書では触れていません。 また、Webサーバとアプリケーションサーバの連携について解説していました。 これらはJava固有の要素が多かったため、本書では一般化して「2.4 サーバサイドの構成要素」で紹介しています。
- Lesson6 Webアプリケーションを効率良く開発するための仕組み
-
サーブレット/JSPなど、Java固有の話が多いため、本書では割愛しました。 MVCモデルや、プレゼンテーション層、ビジネスロジック層、データアクセス層といった、サーバサイドアプリケーションの設計手法に関わる話は、本書では触れていません。 特定のプログラミング言語やフレームワークが前提となることが多く、一般化して説明しにくいためです。 O/Rマッピング、StrutsやiBATISなどフレームワークの活用例についても同様の理由で触れていません。
- Lesson7 セキュリティを確保するための仕組み
-
セキュリティに関しては、本書ではまとまったトピックとして解説していません。 個々のトピックに関連して、個別に説明するに留めています。 Webシステムのセキュリティについては、2010年当時よりも優れた情報源が数多くありますので、本文中で紹介した参考文献を参照してください。