はじめに
やっと読んだ!感想レベルですが紹介します。
Webを支える技術 -HTTP、URI、HTML、そしてREST (WEB+DB PRESS plus)
- 作者: 山本陽平
- 出版社/メーカー: 技術評論社
- 発売日: 2010/04/08
- メディア: 単行本(ソフトカバー)
- 購入: 143人 クリック: 4,320回
- この商品を含むブログ (180件) を見る
きっかけはこの記事。エンジニアパズルのときの参考書籍であがっていたから。
さらに言えば最近node.jsの勉強をしていて、node.jsの特徴である非同期処理に対して従来のhttpの同期型処理と比較もしたいな、そのためにはちゃんとwebとかhttpとか知っておかないとという思いでnode.jsの参考書を一緒に買いました。
実際非同期型と比較するならサーバ/インフラを支える技術に載ってるapacheのアーキテクチャと比較になるんだろうけど。何にせよwebアプリ作る人間なので設計思想はちゃんと抑えておくべきと思ったのです。
[24時間365日] サーバ/インフラを支える技術 ?スケーラビリティ、ハイパフォーマンス、省力運用 (WEB+DB PRESS plusシリーズ)
- 作者: 安井真伸,横川和哉,ひろせまさあき,伊藤直也,田中慎司,勝見祐己
- 出版社/メーカー: 技術評論社
- 発売日: 2008/08/07
- メディア: 単行本(ソフトカバー)
- 購入: 133人 クリック: 2,270回
- この商品を含むブログ (289件) を見る
REST
RESTはWebのアーキテクチャスタイルです。
アーキテクチャスタイル(REST、サーバ/クライアント)
↓
アーキテクチャ(ブラウザ、サーバ、HTTP)
↓
実装(Firefox、Apache)
といった粒度になると。これ知らない概念だった。アーキテクチャスタイルという概念があるという概念を知らない。。。(笑)
- クライアント/サーバ
- ステートレスサーバ
- キャッシュ
- 統一インタフェース
- 階層化システム
- コードオンデマンド
これら全てを兼ね備えるのがRESTというアーキテクチャスタイルであり、webやhttpはこのRESTのアーキテクチャスタイルにしたがって実装されています。ちなみに全部を採用する必要はないとのこと。
HTTP
アプリケーション層のプロトコル。GETとかPOSTとかメソッドがあって、ヘッダがあって。。。ぐらいは知ってた。
ステートレスであり、シンプルであることが最大の強み。
レスポンスコードが知らないものがたくさんあって楽しかった。(笑)
Atom
え?エディタですか?いいえ、XMLフォーマットです。
エディタのほうはこちら。
これ、はてなブログのAPIがこの形式で取得できるんですね、見覚えあると思ったら。
はてなブログAtomPub - Hatena Developer Center
Webサービスの設計
この内容が1番参考になった。今node.jsさわってるので簡単にAPIを設計してみたいと思う。
設計は経験なんて言うけどちゃんと設計思想がある。まず過去の知見を知ろう、ベストプラクティスを知ろう、そして試行錯誤しよう、それが近道だ。
おわりに
まずアーキテクチャを知る、が今年のテーマ。本当に読んでよかった。
Webに関わる全てのエンジニア、RESTやhttpがふわふわした状態だったら読んだほうがいいです。