リソースモデリングパターンをまとめています。

Webアプリケーションについて、RESTfulなURL・リソース設計のパターンを見出すことで、

  • どのパターンかを判断するだけで、既存の Good Practice が適用できる
  • 名前をつけて呼べるようにしたい
  • Railsなどのフレームワークで簡単に適用できるようにしたい

ということを目指しています。

  • ほんとうに役立つか
  • これはパターンと言えるのか
  • もっと他にもある
  • だいぶ粒度がバラバラ
  • 名前の付け方(パターンは名前重要)

など、ぜひご意見をください。

パターン

Collection & Member Resource パターン

Singular (Singleton) Resource パターン

Filtered Collection パターン

Filtered Subresource パターン

Multi-member Resource パターン

Partial Resource パターン

Transaction Resource パターン

Session Resource パターン

Private Resource (Namespace) パターン

Implicit Collection パターン

リソースの大分類

URL(パス)の構造を目安として分類したものです。

コレクションリソース

Collection & Member Resource パターン

メンバーリソース

Collection & Member Resource パターン

Implicit Collection パターン

単数 (Singular, Singleton) リソース

Singular (Singleton) Resource パターン

補助リソース

Collection & Member Resource パターン

アルゴリズムリソース

Filtered Collection パターン

静的リソース

  • 画像とかJavaScriptとかCSSとか
  • もともとWebに静的・動的の区別があるわけではないので、Railsや、Webアプリケーションフレームワーク特有の分類かもしれない
  • GETのみ

ルートリソース

  • 他のリソースへのナビゲーション的役割 (GETのみ)
  • もしくは、サービスの主となるリソース (コレクションリソースが多い)の別名