Как я пишу гигиенический Ruby, смешивающийся?

Вы смотрели на статью в Википедии для магическое число?

Это вдается в небольшое количество подробностей обо всех способах, которыми сделана ссылка магического числа. Вот кавычка о магическом числе как плохая практика программирования

, термин магическое число также относится к плохой практике программирования использования чисел непосредственно в исходном коде без объяснения. В большинстве случаев это делает программы тяжелее, чтобы считать, понять, и поддержать. Хотя большинство руководств делает исключение для нуля чисел и один, это - хорошая идея определить все другие числа в коде как названные константами.

5
задан John 31 July 2009 в 03:35
поделиться

2 ответа

Создайте отдельный объект, чтобы инкапсулировать вашу функциональность и переменные экземпляра, и пусть миксин делегирует этому объекту общедоступные методы. Теперь вам нужно связать только одну переменную экземпляра с вашим объектом. Вы даже можете избежать этого, сохранив хэш {Mixee => Delegate} в модуле и выполняя поиск в начале каждого смешанного метода.

2
ответ дан 15 December 2019 в 06:32
поделиться

Возможно, вы могли бы создать подмодуль, содержащий все служебные методы.

module Foo
  module Utils
    def self.answer
      42
    end
  end
  def helpme
    "the answer is #{Utils.answer}"
  end
end
include Foo
puts helpme
1
ответ дан 15 December 2019 в 06:32
поделиться
Другие вопросы по тегам:

Похожие вопросы: