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

    +154

    1. 1
    2. 2
    3. 3
    4. 4
    $value = $this->model->getById(DataUtil::fromGET("id"));
    foreach($this->model->get(PaginationUtil::getStart(),PaginationUtil::$countOnPage) as $value){
       return NewsUtils::createNewsLayout_ND($value);
    }

    В проект был взят стажер, и начал появляться такой вот индусский код.

    Запостил: Kos, 17 Июня 2011

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

    • Пользуясь случаем спрошу. После таких вот выходов из цикла, много мусора остается? Понимаю суть сего говнокода не в мусоре а в красоте, читаемости и прочей по*бне, но всё же?
      Ответить
      • после таких циклов остается 1 вопрос "НАХУЯ ???"
        З.Ы. Минусует кто автор ?? Или кто то считает что так и надо писать ???
        Ответить
      • В последних версиях пхп мусора не будет.
        Ответить
      • Не думаю, что этот скрипт долго провисит в памяти. В php мусор вообще не очень кому надоедает, большинство скриптов через секунду уже завершаются, и память освобождаетя.
        Ответить
        • нет. Может не освободиться вернее не сразу. При частых обращениях память может не успевать освобождаться.
          Ответить
    • Код не индусский, скорее наооборот.
      Количество строк меньше чем должно было быть, а не больше.

      Не вижу ничего страшно криминального, кроме длинны строк.
      return разве что. Но это вряд ли достойно данного сайта. Не говнокод, так, корявость.
      Ответить
      • Суть в том что функция getById берёт только один элемент, и его засовывают в цикл (+2 строчки) вместо того что бы сразу вернуть результат. Потом пытаются пагинацию прикрутить (PaginationUtil::getStart(),PaginationUt il::$countOnPage) что создаёт имитацию деятельности.
        PS говнокод не обязан падать, он может работать, и даже работать правильно, но при этом ужасно выглядит и тянет память.
        Ответить
    • Я вообще не понял, что оно делает. Куча каких-то неизвестных классов.
      Ответить
      • На сколько я понял - берет первый элемент массива, и его и возвращает - зачем для этого цикл - не понятно, да и всю функцию можно было бы не писать, если задача сводится к получению первого элемента, и return - не ошибка, а так и задумано.
        Ответить
    • array_shift?
      Ответить
    • показать все, что скрытоvanished
      Ответить

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