问题:尽可能避免创建多个对象或多个查询。
我使用带有 Rails 的 Presenters 作为最佳实践。
我遵循的建议说最好使用“扩展 ActiveSupport.Memoizable”(然后 memoize :method(s) 来使用它们)而不是设置具有@the_record = record ||= @record
样式的项目,因为有几个问题 - false 或 nil 没有得到存储以便再次调用查询,并且 memoizable 更好地使用缓存(即使用它!)。
但是我看到 memoizable 在 rails 3.1 Notes i github undercarrierwave 和声明中被弃用:“DEPRECATION WARNING: ActiveSupport::Memoizable 已被弃用,将在未来的版本中删除,只需使用 Ruby memoization 模式。(从extend at调用/Users/kain/.rvm/gems/ruby-1.9.3-preview1/bundler/gems/carrierwave-c4459179b0f8/lib/carrierwave/mount.rb:284”。
也许它已经解决了?有人知道吗?
关于未来使用的最佳实践有什么建议吗?使用 ||= 语法?以上问题怎么办?