Fat Model解消のアイディア
肥大化したActiveRecordモデルをリファクタリングする7つの方法(翻訳) | TechRacho http://techracho.bpsinc.jp/hachi8833/2013_11_19/14738
※ concernにmodelの機能を移しても本質的には何も変わっていない. どこに何があるかわかりにくく見通しが悪い状態は続く
Valueオブジェクト
Serviceオブジェクト
Formオブジェクト
Queryオブジェクト複雑なクエリをここに展開
Policyオブジェクトビジネスルールをカプセル化
- メモリに展開したドメインモデルの操作に特化
Decoratorオブジェクト
ある機能をモデルに含めるとモデルの責務が増える場合にここに任せる
RubyではDecoratorを簡単に作成することが可能
http://robots.thoughtbot.com/evaluating-alternative-decorator-implementations-in
Rails でドメインロジックの実装方法まとめ - assertInstanceOf('Engineer', $a_suenami)
http://a-suenami.hatenablog.com/entry/2014/12/07/200427
- SQLアンチパターン マジックビーンズ
- すべてのModelクラスがActiveRecordを継承している
- ModelがActiveRecordを「持つ」ようにする
- 作者: Eric Evans
- 出版社/メーカー: 翔泳社
- 発売日: 2013/11/20
- メディア: Kindle版
- この商品を含むブログ (2件) を見る
- 作者: Jay Fields,Shane Harvie,Martin Fowler,Kent Beck,長尾高弘
- 出版社/メーカー: アスキー・メディアワークス
- 発売日: 2010/02/27
- メディア: 大型本
- 購入: 9人 クリック: 321回
- この商品を含むブログ (48件) を見る