以一个简单的Ruby on Rails应用程序为例。它Logger在应用程序加载过程中创建一个对象:
# in environment.rb
config.logger = Logger.new(<STDOUT | file | whatever>)
# and in our application we use this object
logger.warn "This process is taking too long to process. Optimization needed."
我的问题是,为什么我们不使用类方法(或静态方法)进行日志记录?会不会Logger.warn比Logger.new.warn?或至少Logger.warn看似直观Logger.new.warn。
即使Logger.new是单例对象,它提供什么好处?