Access denied, Please sign in and make sure you have proper permission.
最近在一个项目重构把 Observer 都拿掉了,把所有的相关逻辑移到 services 里面,更方便测试 各种逻辑也更容易重用及测试,model 承担的责任也都减少。当然简单的场景 observer 应该够用。
#1 楼 @rociiu 嗯,复杂的场景我们也用 Service。而 Observer 里主要是做那些很小很快的事情。
我記得 Rails 4 是去掉 Observer 的……如果是小事情我更傾向於 callback,不過就像 @poiyzy 說的有時感覺不那麼 OO -_-
#1 楼 @rociiu 能举个例子不?
什么情况下 observer 够用,啥情况下 service 更合适?
Observer 是个坑,Rails 2 的时候我就停止使用了
@xmonkeycn 影响你测试的时候 我的目的是减少 model 的 responsibilities
#1 楼 @rociiu 怎么选择用 concerns,还是 services?只使用 services 了?
@rociiu 我觉得你应该单独发一篇文章出来,仔细解释一下 Observer 的问题和如何用 Services 层去拆解和降低 Model 的复杂度。
Observer 不还是 Callback 么。还不如用N2O