Ecco un esempio di una semplice applicazione Ruby on Rails. Crea un oggetto Logger 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 usiamo metodi di classe (o metodi statici) per la registrazione? Non sarà Logger.warn scala di Logger.new.warn ? Oppure almeno Logger.warn sembra intuitivo rispetto a Logger.new.warn .
Anche se Logger.new è un oggetto singleton, quali vantaggi offre?