Візьмемо приклад простого додатка 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
це однотонний об'єкт, які переваги він пропонує?