> Простите, конечно, но как бы я не любил PHP и сколько я бы на ней не писал
тут я могу только сказать хороший программист пишет хороший язык на любом языке. То ты говоришь что хочешь обменяться опытом, то что тебе всеравно какой у тебя код.
Я не считаю это бредом. Длинный метод/функция тяжело читается, его трудно понять просто взглянув на него. Попробуй прочитать сверху вниз код
triumvirat-а, потом закрыть его и сказать всё то, что он делает. Я потратил 10 минут чтобы понять его целиком."Требуют большего числа строк" - так никто не запрещает. Это рекомендация, вполне обоснованная. Маленькое - прекрасное. Выдели он класс для работы с куками/реквестами, метод для сборки параметров поиска, редирект в отдельный метод, заменил бы установку переменных в вид на обычный массив - у него вышел бы замечательный и понятный код. Без лишних деталей.
Стиль читабельный. Но код нет. run() делает слишком много вещей. Скорее всего автор его даже не пытался рефакторить, а как всегда, написав его, переключился на другие части.
> "Не умеешь работать иди учи"
Учить и консультировать это разные вещи. Учат в школах и университетах, а когда к тебе приходят реальные компании за тренингом - это уже бизнес, а не преподавание.
> 150 символов длинна строки - почему?
Почему в книгах строки обычно в среднем 100 знаков? Потому, что так удобнее читать.
> что тогда получится?
http://govnokod.com/3448
и то мне далеко до 150 (максимально 118 с пробелами)
И мне нравится идея выделять всё в функции, даже если сейчас мы вызываем ее только один раз. Это добавляет ясность в код и не отвлекает деталями. Для сравнения:
PHP:
if (!$category->getId())
$redirect = new Base_Redirect();
$redirect->setHeader('action_failed');
$redirect->setType('alert');
$redirect->setMessage('element_does_not_exist');
$redirect->setRedirectUrl(array($this->getRequest()->getRequest()->getUriParts(0)));
return $redirect;
}
и
PHP:
if (!$category->getId())
return $this->elementDoesNotExistRedirect();