1. PHP / Говнокод #9509

    +155

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    public function get_included_js () 
     {
         if (count($this->included_js)) {
             return "\r\n".'<script type="text/javascript" src="'
             .implode('"></script>'."\r\n".'<script type="text/javascript" src="', $this->included_js)
             .'"></script>'."\r\n";
         } else {
             return '';
         }
     }

    Разгребаю чужой проект. Может быть чего-то не понимаю в этой жизни.

    Запостил: zii, 22 Февраля 2012

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

    • Это наверно должен быть хелпер вроде HTML::addJS('foo/bar/file.js'), но получилось как обычно.
      Ответить
      • Это один из методов ядра самописного фреймворка.
        Ответить
    • "\r\n".'<script type="text/javascript" src="'
      Экранирование? Нет, не слышал.
      Ответить
      • не вижу смысла заморачиваться здесь с экранированием.
        Ответить
        • А в конкатенации смысла больше?)
          Ответить
          • я например не люблю вообще в пыхе юзать обычные кавычки
            Ответить
          • Что вы придираетесь к таким мелочам? Ну захотелось автору так написать, ну нравится ему так. Так что, если вам не нравится то говнокод ? Это касательно кавычек.

            Касательно всего кода, ну не вижу здесь ничего особенного. Автор решил обойтись без цикла... Сам иногда делаю так $str='"'.join('","',$arr).'"';
            Ответить
          • больше.
            ковыряйте мануал по пхп, раздел про кавычки.
            Ответить
            • ах да, оптимизация для экономии 0,0000001 с - дело нужное, чтобы разбить строку на на части в ущерб читабельности
              Ответить
              • с такой позицией можно вообще забить на всю оптимизацию и руководствоваться только красотой кода
                Ответить
                • Ну главное порядок сложности соблюдать, а вообще да, в 99% случаев прочая оптимизация не нужна, нужна красота кода.
                  Ответить
                  • для кого-то и
                    a = b ? c : d
                    - сложная и нечитабельная конструкция.
                    Ответить
                    • Когда их много, то читать действительно сложно: #9484
                      А когда очень много, тогда вообще пиздец: #3689
                      Ответить
                      • Ответить
                      • Ответить
                      • Когда много - да.
                        Но некоторые борцы за красоту и читабельность кода доходят до маразма, предлагая приукрашивать самые примитивные вещи. Кроме того, код ведь пишется не для того, чтобы его читали домохозяйки перед сном, а для того, чтобы он работал - это первично. Если присутствует сложная логика, лучше комментарий написать, чем разворачивать пару строк кода на пару страниц.
                        Ответить
    • Меня одного смутило, что на выходе при любых раскладах вернется одна пустая конструкция <script type="text/javascript" src=""></script> ?
      Ответить

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