『Webを支える技術』山本陽平(技術評論社)

『Webを支える技術』山本陽平(技術評論社)

表紙カバーにこう書かれている。

「なぜWebはこんなにも成功したのか」

その答えがこちら。

「プロトコルがシンプルだったから」

Webの歴史の授業


大学の授業で使われそうな内容の本だった。

そもそもインターネットとWebが別物という説明からはじまり、ハイパーメディア、URIの説明、そしてRESTの登場など、さまざまな取り決めにまつわる歴史が語られる。

アプリを作るコードの話が、車についての話題だとすると、ネットワークに関する説明は、おそらく道路の話。

ステートレスなHTTP


TCP/IPをベースに使用されるプロトコル。

ステートレスなやりとり(クライアントが自己記述的メッセージでリクエストを送る)のおかげで、スケールさせやすいという利点がある。

リクエストに使われるメソッドは8つと少ない。(GET、POST、PUT、DELETE、HEAD、OPTIONS、TRACE、CONNECT)

べき等安全性の面から、POSTは注意(二重にリクエストしてしまったり)。

メソッドとステータスコードはブラウザのDevToolのネットワークタブから確認できる。

今後、ホテルの部屋番号なんかを見るときに、重ね合わせて見てしまいそう……。

HTMLとかJSONとか


HTMLに関する説明は「CS50」の授業動画でも学んだ。木構造とか。

小学生みたいな感想だけれど、改めて、仕様や標準を策定する人たちってすごいなあ、と思う。

人とコンピュータの橋渡しをしてくれる仕組みがあるからこそ、リソースを活用することができる。

JSONのデータ構造も「Key&Value」で表現されていて、美しいなと思う。

Webサービス、WebAPIに向き合うときに心掛けていきたい


ルールや仕組みがあるからこそ、自分たちはそれをスムーズに活用できる。

先人たちに感謝しつつ、それらの仕様に沿って、自覚的にWebに触れていきたい。