そろそろ Patterns of Web Application Archtecture ってないかな?
Martin FowlerのPatterns of Enterprise Application Architecture (PoEAA)はEnterprise Application(業務システム)の典型的なアーキテクチャをパターンカタログ化したものであり、Applicationを分析や設計したり、コードを理解したりするのに役に立つ。
これのWebアプリ版ってあるといいと思うのだが、ちょっと探した限りではみつからならなった。これは、PoEAAと抽象レベルは同じくらいであり、パターン自体同じものが使えるのも多いだろう。しかし、Webには、RESTやCSS、OpenIDなどWebアプリ独特の構造がある以上、その視点でのパターンがあるとよいのではないか。うまく応用すればセキュリティにも役立つかもしれない。
まだでてきていないのは、Webアプリ開発で使う技術基盤が多様で、それがパターン化させる土台になってしまうからではないだろうか。つまりはrailsパターンやAJAXパターンになってしまうという感じだ。Webアプリ構造として汎用化されないのだが、これは下限を見るのに有用かもしれない。解決法がrailsべったりといっても、問題提起や構造までべったりとは限らないからだ。
パターンカタログは構造化文書であり、項目には名前や関連パターン、そのほかいくつかあるが、とりあえずパターンになってそうなものを挙げてみることにする。粒度はばらばらで、パターン名だったり、説明だったり、カテゴリだったりするが。
- ゲストユーザー
- Well knownなCSSにあわせた出力
- ユーザーテンプレート
- ユーザー設定
- ユーザーによるリソース生成
- コメント
- 構造化文書
- 文書内リンク処理
- リソース間構造
- ランキング
- プリティURL
- RSS
- OpenID
...つづく(と思う)