「Web技術の基本」を読む
この本を読む目的
独学にてプログラミング及びアプリ開発を学んでいるがWebに関する知識も重要だと感じた。そこでwebに関する全体的な知識を学ぶためにこの本を読む。
・基礎的な知識を身につけることが目的である。
01 Webとは
文書の公開・閲覧のシステムのことを’Web'と呼ぶ
Webページはハイパーテキストと呼ばれる言語で構成され、Webページ中にハイパーリンク(別のWebページへの参照)を埋め込むことができ、複数のWebページと関連づけることができる。
03 様々なWebの用途
文書の閲覧
1つのドメインにある複数のWebページの集まりをWebサイトとよぶ。ユーザーはそれを読む。
ユーザーインターフェース
コンピュータとユーザーのやりとりの橋渡しをする機能をユーザーインターフェースとよぶ。
プログラム用API
ソフトウェア同士のやりとりの橋渡しをする機能をAPI(アプリケーションプログラミングインターフェース)とよぶ。ex)アプリが地域情報を送信→Webサーバーは受け取った地域情報に対応する天気予報のデータをアプリに返す。
04 HTMLとWebブラウザ
・HTML
ハイパーテキストを記述するための言語。
・Webブラウザ
ハイパーテキストは文章にタグで意味付けをしたもので人間が読むには適していない。ハイパーテキストを解釈して人間が読みやすいように表示してくれるのがWebブラウザ(Chrome,Firefox...)。HTMLのルーツは世界共通のためどのWebブラウザでも読める。
05 WebサーバーとHTTP
・Webサーバー
Webブラウザからコンテンツの要求があると、必要なコンテンツをネットワークを通してWebブラウザに送信する役割を持つ。
・HTTP
ハイパーテキストを送信するためのやりとりの手順とやりとりするメッセージの書式は世界共通の仕様として決められている。この世界共通のハイパーテキストのやりとりの手順をHTTP(HyperText Transfer Protocol)という。
06 Webページが表示されるまでの流れ
・URLを使ってWebサーバーにアクセス
URLには「どのやりとりの手順で」「どのWebサーバーに」「なんのコンテンツを」取りに行くかという情報が含まれている。
07 静的ページと動的ページ
・静的ページ
何度アクセスしても同じものが表示されるWebページ
・動的ページ
アクセスした時の状況に応じて異なる内容が表示されるWebページ。だいたいこれかも
GoogleとはYahooの検索サイトとかもこれにあたる
08 動的ページの仕組み
・CGI(Common Gateway Interface)
WebサーバーがWebブラウザからの要求に応じてプログラムを起動させるための仕組み←どゆこと?
・サーバーサイド・スクリプト
CGIから呼び出されるプログラム
・クライアントサイド・スクリプト
HTMLに埋め込まれ、Webブラウザによって読み込まれる際に実行される
09 webの標準化
・標準化とは
どのブラウザでも同じようにWebページをするために規格を決めることを標準化という。これがないとごっちゃになって意味わからんことになる。
10 Web設計の思想
・RESTful
REST(REpresentational State Transfer)とは4つの原則からなるシンプルな設計。RESTの原則に従って設計されたシステムをRESTfulなシステムという。
RESTの原則
1.統一インターフェース:あらかじめ定義・共通された方法(WebであればHTTP)で情報がやりとり
2. アドレス可能性:全ての情報が一意のURLの構文で示される
3. 接続性:やり取りされる情報にはリンクを含められる
4. ステートレス性:やりとりは1回ごとに完結し、前のやり取りの結果に影響を受けない。
・セマンティックWeb
Webページの情報に意味を付け加えたもの
chapter2 Webとネットワーク技術
01 Webを実現するコンピュータネットワーク
・クライアントとサーバー
サーバー:情報やサービスを提供する役割を持つコンピュータ
クライアント:サーバーから提供された情報やサービスを利用する役割を持つコンピュータ
02 インターネットの標準プロトコル
・プロトコル
ネットワークに接続された機器同士が通信するときのあらかじめ決められた共通のルール
・TCP/IP(Transmission Control Protocol / Internet Protocol)
インターネットにおける様々なサービスを実現するためのプロトコルのこと
03 TCP/IP
役割ごとに以下の4つの階層に分かれている
・アプリケーション層
・トランスポート層
・インターネット層
・ネットワークインターフェース層
・アプリケーション層の機能
Webブラウザやメールソフトなどのアプリケーションごとのやり取りを規定
・TCPとUDP
実際にデータの転送処理をしているのがトランスポート層に位置するTCPやUDP
TCPは分割されたデータの順序や欠落をチェックしているがUDPは順序や欠落を保証していない。
UDPは信頼性がない分効率が良い←動画ストリーミングなどで利用
04 IPアドレスとポート番号
・IPアドレス
インターネットに接続されたコンピューターを特定しデータの行き先を管理するために利用されている識別番号。住所的な
・ポート番号
コンピューターが提供するサービスを指定するための番号。
IPアドレス:住所。ポート番号:部屋番号的な