コンポーネント指向のRailsライブラリ「Cells」
CellsはRails向けのオープンソース・ソフトウェア。ブログパーツやAdSense、iGoogleのような仕組みは画面にコンポーネントを追加して個別に処理ができるようになっている。そのような自由度の高さが今のネットサービスの主流になっているのだ。
自作のソフトウェアで設定ファイルレベルのコンポーネントまで対応するのは難しいかも知れないが、Cellsを使えば柔軟なシステム構成ができそうだ。各機能をCellと呼ぶコンポーネントとして開発することで、機能の追加、修正が個別のコンポーネント単位にできるようになるのだ。
コントローラーやビューはCellの中で個別に定義する。データの授受はAjaxを使うことで標準のコントローラーとは独立して操作できる。Cellの読み込みを外してしまえば、機能も読み込まれなくなる。コンポーネントとしての利用ができるのだ。
Cellのコントローラー
ビューを別で定義してそれを読み込むようにするのが基本だが、Cellsを使えばもっと独立性を高められるようになる。プラグインのように他のシステムで使い回すことも簡単にできる。プラグインシステムのように管理機能を作り込む必要もないので、独自のシステムの中でYoutube動画を表示したり、フィードを表示すると言ったような使い方ができるようになる。
Cells - Components For Rails