http://www.rubycolor.org/takahashi/xmldevday8/img0.html
REST と Ajax は仲が悪いようで実はそうじゃない、
ということを漠然とは思ってたけど(--> [2005-11-11-8])、
その見方は正しかったっぽい。
とても良くまとまっている。勉強になりました。
でも高橋メソッドなので、まとめて見れないのはつらい。
ポイントだけピックアップ。
- ウェブアプリの以下の問題を解決したのが Ajax
- 表示の変更がページ単位になってしまう
- 何か操作するとサーバにアクセスして待たされる
- Ajax の技術自体はそんなに新しくないけど、
Google が全面的に採用して、キャッチーな名前を付けたおかげで
爆発的に流行った。
名前重要
- REST の技術的特徴
- サーバがデータを持つ
- サーバは状態を持たない。状態はクライアントが持つ
- クライアントがキャッシュを持つ
- ゲートウェイやプロキシを自由に置ける
- サーバからコードをダウンロードしやすい
--> Scale しやすい
--> 実は Ajax を予感させる考え方
- REST で超重要なのは URI。
- URI は「リソースの表現」
- 「リソース」は状態に依存しない
- 状態に依存するものは「リソースの表現」
- REST では「リソースの表現」をサーバからクライアントに転送する
- Ajax で作られたアプリはブックマークできないので
RESTful じゃない、というのは性急すぎ。
- そもそも選択したボタンとか入力したテキストとか
ブックマークできないものは元々あった。
- Ajax でもブックマークできる URI を割りふることは可能。
例えば Google Maps。クエリストリングスに埋めこみゃ良い。
- どう割りふるかは、Ajax アプリケーションの設計上の問題。
- Web1.0 から Web 2.0 の時代で変わったこと
- リソースを混ぜて表示するようになった
- コード オン デマンド
- サーバの representation と クライアントの representation が
等価であるとは限らない。
- サーバの representation は URI で指定できる。
- クライアントの representation は URI で指定できなくても良い。
- Web の RESTful じゃない点の一つに Coockie による
セッション保持がある。
- 毎回 BASIC 認証する、という方法もあるけど、、、、
- クライアントで remixing という考え方だと、
認証が必要な部分とそうでない部分を分けられる。
- Ajax を使ったほうが Scalable になるかもしれない
それにしてもさすが高橋メソッド。
243ページもあるとは。
参考)
高橋メソッドについて(ルパンメソッド) --> [2005-04-07-1]
高橋メソッドなプレゼンツール --> [2005-04-08-4]
高橋メソッドによるエヴァンゲリオンのあらすじ --> [2005-06-05-7]
高橋メソッドを実現する Perl モジュール --> [2005-08-29-10]
less プレゼン meets 高橋メソッド & もんたメソッド --> [2005-09-08-1]: