1. Ruby / Говнокод #20094

    −54

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    [:mail_subject, :mail_from, :mail_to, :mail_text_template].each do |m|
      define_method(m) do
        return self.class.send(m) if self.class.send(m).is_a?(String)
        return self.send self.class.send(m) if self.class.send(m).is_a?(Symbol) && self.respond_to?(self.class.send(m))
      end
    end

    Здесь даже сложно придраться к чему-то одному. Плохо все: начиная от динамически объявленных методов (то же самое можно сделать через alias) и заканчивая крайне мудреными условиями возврата.

    В общем, автора ждет отдельный котел в аду.

    Запостил: strax, 30 Мая 2016

    Комментарии (1) RSS

    • Это такой рубивариант крестовой метушни.

      Людям дают в руки волшебную палочку, и они начинают всё вокруг превращать в хуйзнаетчто.
      too much magic
      Ответить

    Добавить комментарий