Personal tools
You are here: Home ブログ 井上 RESTの当惑
« December 2010 »
Su Mo Tu We Th Fr Sa
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  
Recent entries
Apache2.4のリリース予定は来年(2011年)初め(あくまで予定) inoue 2010-12-23
Herokuの発音 inoue 2010-12-20
雑誌記事「ソフトウェア・テストPRESS Vol.9」の原稿公開 inoue 2010-12-18
IPA未踏のニュース inoue 2010-12-15
労基法とチキンゲーム inoue 2010-12-06
フロントエンドエンジニア inoue 2010-12-03
ASCII.technologies誌にMapReduceの記事を書きました inoue 2010-11-25
技術評論社パーフェクトシリーズ絶賛発売中 inoue 2010-11-24
雑誌連載「Emacsのトラノマキ」の原稿(part8)公開 inoue 2010-11-22
RESTの当惑 inoue 2010-11-22
「プログラマのためのUXチートシート」を作りました inoue 2010-11-19
「ビューティフルコード」を読みました inoue 2010-11-16
Categories
カテゴリなし
 
Document Actions

RESTの当惑

以前(かなり前ですが)、柴田さんから「 アプレンティスシップパターン 」を献本してもらいました。

先月ようやく読みました。章を忘れましたが「Web系のソフトを開発するならHTTPのRFCぐらい読め(意訳)」とあり、そうだそうだHTTPのRFCを読んでいないような開発者はWebを語る資格はない、と心の中で喝采をあげました。が、すぐその後に「RESTの論文も読んで当然(意訳)」とあり、心の中でまずい前言撤回となりました。

普段、なるべく一次情報に当たろうとは思っていますが、現実的には困難です。「HTTPのRFCを読んでいないような開発者はWebを語る資格はない」と偉そうなことを言いましたが、TCP/IP関係の全RFCを読まないとHTTPについて語る資格なしと言われたら、黙るしかありません。ちなみに、TCP関連だけでも http://www.networksorcery.com/enp/protocol/tcp.htm ぐらいあります。もっとも、このリストが正しいのかすら確証がありません。知らないことは多くあると思う、謙虚な姿勢が重要です。

アプレンティスシップパターン 」にRESTの論文ぐらい読めと喧嘩(?)を売られたので読んでみました。以下から読めます。

読んだ感想は、当惑です。

RESTとは何か、については5章の節タイトルと図を眺めるだけで一応分かります。上記リンクのクリックが面倒な人のために節タイトルだけ列挙しておきます。RESTとは何かと聞かれた時の回答にこれらを挙げれば教科書的には正解になります。

5.1.2 Client-Server
5.1.3 Stateless
5.1.4 Cache
5.1.5 Uniform Interface
5.1.6 Layered System
5.1.7 Code-On-Demand

なぜRESTかについては、読んでも腑に落ちません。1章は導入、2章は用語説明なので、なぜRESTかに答える鍵は3章と4章かと思うのですが読んでも理解できません。そもそも3章の比較(以下のリンク先にまとめの表があります)に直交性をまったく感じません。直交性がなくてもいいのか、と自問しつつも全体に腑に落ちません。

ぼくを最も当惑させるのは、この論文を先入観なしに与えられた時に正しく評価できる自信がないことです。RESTが概念として広まっている事実や、著者がApacheの有名人であることや、この論文がHTTP1.1の思想的バックボーンで著者自身がHTTP1.1の主要エディタであること、これらの背景知識がなかったとします。論文を読んだ自分の反応は、おそらく「つまらない。読む価値なし」です。こうなると、普段、自分が先入観なしに他の技術を評価できているのか怪しくなります。たぶんできていないのでしょう。こんな事実を突きつけてくる点で、実に困った論文です。

当惑の話は別にして、論文で興味深かったのが「6.3.4.2 Cookies」です。次のようにクッキー完全否定です。

cookie-based applications on the Web will never be reliable.

一部否定(クッキーに色々と状態を持たせるな)ならともかく、クッキーにセッションIDのような状態を持つことも否定しているように読めます。ここは同意できません。使える仕組みは使えばいいと思います。

The URL to Trackback this entry is:
http://dev.ariel-networks.com/Members/inoue/rest/tbping
Add comment

You can add a comment by filling out the form below. Plain text formatting.

(Required)
(Required)
(Required)
This helps us prevent automated spamming.
Captcha Image


Copyright(C) 2001 - 2006 Ariel Networks, Inc. All rights reserved.