Hatena::Groupcatalyst

dann@catalyst このページをアンテナに追加 RSSフィード

2008-02-15

モデルをまたがったロジックの共有

| 20:56 |  モデルをまたがったロジックの共有 - dann@catalyst を含むブックマーク はてなブックマーク -  モデルをまたがったロジックの共有 - dann@catalyst  モデルをまたがったロジックの共有 - dann@catalyst のブックマークコメント

結局、コントローラにPrivateなアクション定義して、そこで実現するのが一番シンプルなんじゃないかと思った。

ただ、コントローラにもたせちゃうとテストはしにくいから、そこのロジックが複雑になるのであれば、コントローラからディスパッチする別のロジック専用のクラスを作るという形にするんじゃないかと思った。思うに、複数のUIで共有されるビジネスロジックは実際は少ないんじゃないかという気がする。

だから、ロジックが複雑になる場合には、<コントローラ名>LogicというPlainなクラスを作って、そこにモデルをまたがったロジックを記述するようにすればいいんじゃないかという気がした。ロジックがシェアされなければ、こういう命名規則はありなんじゃないかと思う。

自分の中ではすっきりしたつもり。後はこれでやってみるだけ。今までは極力モデルに押し込もうとしてたんだけど、モデルにまたがったロジックをどう扱うのかというので、全部コントローラに入ってしまって、上手くいかないところがあったのだけれど、次からは上記方針でやってみる。

ゲスト



トラックバック - http://catalyst.g.hatena.ne.jp/dann/20080215