ROAを勉強してみた

URLを指定するのがREST、と簡単に考えていたが、本来のRESTはROA(Resource Oriented Architecture)という設計思想に基づくものだった。

HTTPのメソッドとレスポンスコードがこんなにたくさんあるとは思わなかった。こんな世界は理想だけど現実にはないだろう、と思ったが、Amazon S3が忠実にROAであることにびっくりした。Rails2.0がROAになったし、Web業界のWebサービスはROAか。

ROAの条件としてステートレス性があるが、Javaのフレームワークでは逆にJBoss SeamやWicketなどステートフルが次にはやりそうだ。こっちは業務アプリケーションを作る際の問題を解決してくれるように見えて、開発者の負担を軽減する。アプリケーション利用者に新たなメリットをもたらすかは不明だが。

ステートフルにすることで解決できる問題をROAでも解決できればROA万歳!なのかなあ。でも、トランザクション処理やバッチ処理ばっかりの業務アプリをROAで実現するのは無理っぽいし。参照と単一登録/更新はクライアントで状態を持って、トランザクション、バッチ中心はサーバ側で状態を持つという区分けがきちんとできればユーザは使いやすくなるかな。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください