『プロになるためのWeb技術入門』を読んで

Webアプリケーション開発の学習にあたり本書を読みました。
「Webアプリケーションとは」から始まりWebの歴史、現在まで使われている技術を学ぶことができます。
Webの基礎について学ぶことができたため、学んだ内容をまとめます。

学んだこと

リクエス

情報を要求すること。

レスポンス

リクエストに対して情報を返すこと。

例:Google検索

  1. Webブラウザで検索ワードを入力し検索する。
  2. Webブラウザから検索ワードを含むページ情報を要求する。→リクエス
  3. サーバーでリクエストを受け取り、処理結果をWebブラウザに返す。→レスポンス
  4. Webブラウザに表示される。

プロトコル

通信を行う際の決まり事のこと。
RFCという文書で統一されている。
例:HTTP、SMTPFTP…等

ポート番号

0~65535まであり、サーバー側でリクエストを待つときに使用する番号のこと。
クライアント側はポート番号を指定してリクエストする必要があるが、プロトコルごとに標準で使用するポート番号があるため、ポート番号を意識しなくてもWebサイトにアクセスできる。
例:80番ポートを指定する場合は、URLやIPアドレスの後ろに「:80」をつける。

ステートフル

状態を持つ。 以前の情報が保存されている。 例:FTP

ステートレス

状態を持たない。 以前の情報が記録されていない。 例:HTTP

HTTPはステートレスのため、HTTPのみでは現在使われているWebアプリケーションのようにログイン状態をもつことができない。 そこでCookieという技術が誕生した。

ステートレスのHTTPで状態を持たせることができる。

  1. WebサーバーからWebブラウザへ情報を送る。
  2. WebブラウザCookieを受け取ったWebサーバーへCookieを送る。
  3. WebサーバーはCookieを見て誰がアクセスしてきたのか判断できる。

これによってHTTPでもログイン状態を持つことができる!Cookieすごい!

Netscape Navigatorを開発していたNetscape Communication社によって開発された。

終わりに

忘れている部分や知識不足の部分が多く、とても勉強になりました。 現在使われている技術がどのような経緯で作られたのかがわかり、読んでいて非常に面白かったです。
本書を読むことでざっくりとWebアプリケーション開発を理解することができるので、これからエンジニアを目指される方にもお勧めしたい本だなと思いました。
フレームワークを学ぶ前にこの本に出合い、どのような仕組みになっているのか少し理解することができてよかったと思います。

また、セキュリティ部分もとても面白かったです。
Webアプリケーション開発で重要な部分であるため、どのようなリスク、対策があるのかしっかり理解する必要があると思います。
別の記事でまとめてみたいと思います。

参考文献: 「プロになるためのWeb技術入門」 ――なぜ、あなたはWebシステムを開発できないのか | 小森 裕介 |本 | 通販 | Amazon