Яuбy / Говнокод #10943 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
  19. 19
  20. 20
  21. 21
  22. 22
  23. 23
  24. 24
  25. 25
def comparesArray(xmlPath,arrExDB,arrRtXML,modName,msg,remarks)
  begin
    $write.log("Info","Inside comparesArray method from ********.rb")
    if arrExDB.sort == arrRtXML.sort
      qcode = ""
      arrRtXML.each{|x| qcode = qcode+x+","}
      qcode = qcode
      @objXLResult.writePassResults($rowCounter,$rowCounter-1,modName,msg,xmlPath,qcode.chomp(","),qcode.chomp(","),remarks)
    else
      arrRt =arrRtXML-arrExDB
      strRt =""
      arrRt.each{|x|     
        strRt = strRt+x+",\n"
      }
      arrEx =arrExDB-arrRtXML
      strEx =""
      arrEx.each{|x|      
        strEx = strEx+x+",\n"
      }
      @objXLResult.writeFailResults($rowCounter,$rowCounter-1,modName,msg,xmlPath,strEx.chomp(","),strRt.chomp(","),"Does not Match - #{remarks}")
    end
  rescue Exception => e1
    $write.log("Exception"," Problem from comparesArray method from ********.rb. System = #{e1.to_s}")
  end 
end

А вы сравниваете массивы как-то по-другому? Ну вы странные.

Запостил: sunstream sunstream, (Updated )

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

    • Передавать в функцию минимум шесть параметров, половина которых дублирует глобальные переменные? По-моему, это чересчур сурово даже для Си.
      Ответить
      • Это даже не код плохой. Это - архитектура абсолютно непродумана.
        Ответить
        • Плохой код в большинстве случаев является следствием непродуманной архитектуры. Изредка - ограничений используемого фреймворка. Так что эти вещи взаимосвязаны.
          Ответить
          • Ну почему?
            Бывает человек просто написал в руби for-цикл для итерации по массиву. Архитектура никак не испорчена, а говнокод - есть (всегда можно заговнячить свой класс в продуманной архитектуре, ведь так?).

            Но согласен, если архитектор - говнокодер, то на уровне методов и классов код не может быть нормальным.
            Ответить
            • Да, верно: говнокод ещё может возникать из-за того, что человек не знает (или не хочет изучать), какой инструментарий ему доступен.

              Кстати, пройтись по элементам массива с помощью for допустимо, если нас интересуют как сами элементы, так и их индексы. Но в большинстве случаев итераторы уместнее.
              Ответить
              • "говнокод ещё может возникать из-за того, что человек не знает (или не хочет изучать), какой инструментарий ему доступен."

                Да. Это, по-моему, и есть основная причина говнокода как на локальном уровне, так и архитектурно.
                Ответить

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

Из-за тебя ушел bormand, guest!

    А не использовать ли нам bbcode?


    8