Apr 26, 2006

RESTが難しいってことについて

暇を見つけてGoogle Data APIs Protocolをしげしげと読んでみていた。よくできているね。

Google Data APIs Protocol

ところで話はかわって、識者の人々が「RESTは難しい」「RESTを説明するのは難しい」と繰り返し発言している。事情に詳しくない(しかし興味は持っている)市井の人々に「そうなんだー、難しいんだー」という気分が蔓延するのは、REST推進派の人々にはネガティブに作用するはずで、なんでそんな発言をするのだろうと思う。私自身は門外漢なこともあって「難しい」理由がいまいちよく分からない。なんも難しくないと思えるけれど。

で、冒頭の話に戻るわけで、もしそんなに「RESTが難しい」のなら、もう「Google Data」互換APIを実現するフレームワークを作ってしまって「Operating Systemとして」使っちゃえばいいじゃんか、と思った。

どういうことかというと、RESTが難しいというのは既存のアプリケーションの実現するリソースやそのリソース上の操作があらかじめ存在していて、それをRESTっぽいリソースや操作にマップすることが難しいということだろう。あるいはRESTっぽいサービスを提供するための便利なツールキットが不足しているとか。そうだそうだ、きっとそうに違いない(笑)。

一方で、Google Data APIは任意のデータ構造のストレージとそれに対する読み書き、更新、削除と検索インタフェースを備えているので、たいていのWebアプリケーションで用いるリソースを格納する「ストレージ」への機能的要請をある程度満たしているように思える。もちろん、Google Data APIでは、並列性を確保するために更新イベントはすべてoptimisticにバージョン管理されるので、真っ当にReader-Writer Lockがないと普通のプログラムも書けん罠、とかってのはある。あってしかるべきだ。そういう場合でも上位互換APIを考えればよいだけだろう。要は、Google Data API互換フレームワーク上にWebアプリケーションを実装し、必要に応じてAPIを外部に公開すればよい。

もちろん、Webアプリケーションとしてのスケーラビリティを実現するには、Google Data APIフレームワーク自体のスケーラビリティが必要になるが、システムプログラマは単にそこに注力すればよいというoptimisticなobservationも可能だ。

…っていうのは、変な煽り記事(「Web2.0」vs「SOA」,勝つのはどっちだ?:ITpro)を読んでて思いついた与太話なので真に受けないこと。

About Me

My Photo

つくばで働く研究者

Total Pageviews

Amazon

Copyright 2012 Ogawa::Buzz | Powered by Blogger
Design by Web2feel | Blogger Template by NewBloggerThemes.com