自分も一個担当していくつかのネットのサービスを調べたんですが、5個調べて全てがFlash, Javascript問わずInPlaceEditor()の機能を持ってました。
↓こういうヤツ
もはや、コンシューマ系のネットのサービスではAjaxを使わないことの方が例外的みたいです。もう完全に工数が・・・、負荷が・・・などと言ってる場合じゃなくなってしまいました。Ajax拒絶反応は今年中(今月中)で終わりにせねばなりません!(> 人類+俺)
急いでそういうのを覚えねばなりません!
どういう方法があるのか、どういう技術を勉強しなきゃいけないのかを調べてみました。
Ajaxを使った開発方法には大まかに2種類あるようです。
- サーバサイドプログラムでAjaxのコードを生成する
SAJAXやGWTのようにサーバサイドの言語でクライアントを含めたAjaxコードを生成する。クライアントプログラムを良く知らなくても使えるのが良い。UIの表現力はツールに依存する。 - サーバサイドとクライアントサイドをAPIを介して完全に分ける
APIを挟んで分業する。サーバサイドがUI変更の影響を受けないので自由なUIが作れる。APIを一揃え作るのが大変。
1の方法はフレームワークがサポートしてるととても簡単で良い。
2の方法では標準APIをどうするかを更に決める必要がある。(毎回話し合って決めるなんてやってらんない) 現状ではAtomPPが有力っぽい。サーバサイドのフレームワークもRESTし易いものが必要。
2の方法で行くとして、選択すべき技術やツールはどういうものがあるのか。
- Web API(の仕様)
- クライアントサイドのフレームワーク
- サーバサイドのフレームワーク
個人的な嗜好を無視して無難なのを選んでみると、
- Web API(の仕様) → AtomPP
- クライアントサイドのフレームワーク → prototype.js + script.aculo.us
- サーバサイドのフレームワーク → Rails
かな・・・?
2の方法はVOXの開発チームがエレガントにやってそうなのでどんな技術、ツールを使っているのか参考にしたいとこです。