Real World HTTPを読み始めた

HTTPに関する理解を深めるために、渋川よしきさんの「Real World HTTP」を読み始めた。 といっても、まだまえがきを読んだだけなのだが、まえがきにはこの本を通して学べること、また著者の渋川さんが実現したいことがかなり丁寧に書いてあったので、これから読み進めていくにあたって都度読みかえしたいポイントを箇条書きで簡単にまとめておこうと思う。

  • コンピュータサイエンスに当たるような内容、業界標準プロトコル、テストしやすく見通しやすいコードの書き方、アルゴリズム、データベースなどと同様に、HTTPも陳腐化しない技術の一つ。このような基礎をしっかり抑えることが様々な新しい技術のキャッチアップをする時間を短縮することに繋がる

  • この本はHTTPに関する内容を一冊に集めることを目的に企画させており、主にクライアント側の視点に立って書かれているが、主たる読者としてはウェブの開発関係者を見込んでいる

  • 本全体を通しての説明の流れとして、まずHTTPの基本である送信側(クライアント)、受信側(サーバー)のリクエストとレスポンスのやり取りについて学ぶ。その後はHTTPの進化の歴史に従ってどのような改善が行われていったのかを説明する。最後にcurlコマンドを使って行った送受信の内容をプログラミング言語のコードに落としていく方法を学ぶ。

  • この本が実現したいこと

    • HTTPについてのイメージを掴み、今後新しい技術が出てきてもキャッチアップできる基礎を学ぶこと
    • 外部のウェブサービスを利用するコードや、ウェブサービスをプログラミングしたり、それらのコードのテストを行えるようになること(つまり、手を動かせるようになること)

まとめ

本が実現したいことに「HTTPについてのイメージを掴む」というのがあるのはとてもありがたい。基礎からしっかりとした知識をつけていければと思う。また、外部のAPIを叩いたりそれらとの関連して動作するアプリのテストを書いたりすることに関する知識、理解も深められればと思う。

なお、HTTP/1.0の章だけを読んでも今でも通じる知識が得られるように構成されているそうなので、この本を読むに当たっての目標も、まずは第3章の「Go言語によるHTTP/1.0クライアントの実装」まで実装しながら読み進めることとしたい。頑張るぞ!

また、Goの開発環境についてはIntelliJに土下座しながらStudentプランのGoLandをインストールさせていただいた