Prendendo un esempio di una semplice applicazione Ruby on Rails. Crea un Logger
oggetto durante il processo di caricamento dell'applicazione:
# 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."
La mia domanda è: perché non utilizziamo metodi di classe (o metodi statici) per la registrazione? Non Logger.warn
ridimensionare di Logger.new.warn
? O almeno Logger.warn
sembra intuitivo Logger.new.warn
.
Anche se Logger.new
è un oggetto singleton, quali vantaggi offre?