Код IT
← Каталог

Рекомендации по разработке на Ruby — Организация модулей и пространств имён

Фрагмент из «Рекомендации по разработке на Ruby»: Организация модулей и пространств имён.

Ruby main.rb
# lib/billing/invoice.rb
module Billing
  class Invoice
    # реализация
  end
end

# lib/billing/payment_processor.rb
module Billing
  class PaymentProcessor
    # реализация
  end
end

# Использование
invoice = Billing::Invoice.new(order)
Billing::PaymentProcessor.charge(invoice)
# lib/billing/invoice.rb
module Billing
  class Invoice
    # реализация
  end
end

# lib/billing/payment_processor.rb
module Billing
  class PaymentProcessor
    # реализация
  end
end

# Использование
invoice = Billing::Invoice.new(order)
Billing::PaymentProcessor.charge(invoice)