← Каталог
Рекомендации по разработке на Ruby — Использование модулей для примесей
Фрагмент из «Рекомендации по разработке на Ruby»: Использование модулей для примесей.
module Loggable
def logger
@logger ||= Logger.new($stdout)
end
def log(message)
logger.info "[#{self.class}] #{message}"
end
end
class PaymentService
include Loggable
def process(order)
log "Processing payment for order ##{order.id}"
# реализация
end
end module Loggable
def logger
@logger ||= Logger.new($stdout)
end
def log(message)
logger.info "[#{self.class}] #{message}"
end
end
class PaymentService
include Loggable
def process(order)
log "Processing payment for order ##{order.id}"
# реализация
end
end