社長BLOG
HOUOU ガジェット作成のガイドライン【案】
- 2011-12-01 (木)
- 社長BLOG
HOUOUからはjQueryを全面採用し、AJAXでの運用に適したJSON形式のAPIを大量に用意する準備を進めている。
これらの整備が完了した後は、ガジェットの作成スタイルがこれまでと根本的に変わることになるだろう。
従来のアクションフロー
日記機能を例に考える。
日記機能の個々の要素(投稿フォーム、一覧画面、個別記事画面)はそれぞれパーツに分けることができる。
例えばホーム画面に表示する最新日記一覧は、ガジェットとして独立している。
せっかくパーツに別れてはいるのだが、フォームのアクションフローがいけてない。(閲覧はまだマシだが)
日記を投稿した後の遷移が固定されているため、ガジェットとして配置しても、投稿以後の遷移が統一されてしまう。
=>実質的には固定されたページにしかガジェットを置けない。
◆全ページ遷移するアクションフロー
HOUOUのアクションフロー
ブラウザサイドでレンダリングすることで、単一のガジェット内で、インデックス表示、フォームアクション、結果表示のすべてのフローを完結させることができる。これによって、ガジェットのポータビリティが増す。
例えば、特定のコミュニティのページに、自分の日記の投稿ガジェットを設置しても、動作に不整合が起きなくなる。
(実際にこれをする価値があるかは別として、、、)
ホーム画面に好きなコミュニティの掲示板ガジェットを配置しても、正しく動作する。
◆ガジェット内のみで完結するアクションフロー
ガイドラインはどうなるの?
ざっと考えたガイドライン【案】
ガジェット作成のガイドライン案
・ガジェットアクションはAJAX(OpenPNEのJSON API)を使う
・HTMLレンダリングはブラウザサイドで行う
・フォームはページ遷移せずガジェット内で完結させる