Приветствую, дамы и господа. Собственно вопрос мой звучит так: известны ли вам какие-то проверенные, авторитетные люди/сервисы, с помощью которых можно было бы осуществить платный/бесплатный анализ кода на предмет его качества(читабельность, стандарты и т.п.). Дело в том, что сейчас я работаю в компании, в которой ведущий программист пишет вот так(код одного метода из класса, просто ради примера, в прикрепленном файле. Не пытайтесь понять что делает этот метод, просто посмотрите КАК он написан). По моему мнению так писать, мягко говоря, недопустимо. Но у "ведущего" программиста такие мысли отсутствуют. Вот мне бы хотелось найти таких людей, о которых я писал выше, что сказали бы мне: это я такой "придирчивый" и все с таким кодом в порядке или, все таки, я прав и это пипец полный? Человек я в компании новый, поэтому подобное мнение высказать основываясь лишь на собственном мнении пока было бы не слишком разумно.
Такие ссылочки тут не помогут. Т.к. не важно что я сам думаю и/или знаю по этому поводу, а программисту, написавшему то, что я скинул в файле, это показывать просто смысла не имеет.
Что значит хорошо или плохо? Если тебя интересуют стандарты ссылки на них я скинул. Лично я использую стандарты которые предлагает phpstorm. А код вне mvc вообще не признаю.
Меня не интересуют. Я сам им следую. Меня интересует мнение о коде приведенном в файле, а так же советы и ссылки к кому обратиться за тем, о чем я писал выше. Я тоже не признаю код вне MVC. Но работать приходится с человеком(в его подчинении), который пишет вот ТАК как есть в файле. Мне нужно как-то донести до моего руководства, не имеющего отношения к программированию, суть этой ситуации.
Что именно тебе не нравится? Ну прояви инициативу. Возьми какой то фрейморк и перепиши все следуя его стандартам. Придешь покажешь может печеньку дадут.
Простите, но вы не вникли в суть моего вопроса и мы отдаляемся от темы. Переписывать что либо "так как надо" не имеет смысла, т.к. для руководства "так как надо" эквивалентно "работает и хорошо". Мне же, я повторюсь, нужны профессиональные оценки приведенного выше кода. Считаете себя профессионалом — оцените, покритикуйте или похвалите. Не считаете, но знаете к кому обратиться — подскажите.
Что именно тебя в коде не устраивает? Работает и хорошо. На все есть свои причины. У всего своя история.
@Newto на этом форуме сложно получить норм ответ, много любителей пофлудить) 1. PHP: if ($this->currency == 0) { $currency = " ₽"; $nn = 0; } if ($this->currency == 1) { $currency = " €"; $nn = 0; } if ($this->currency == 2) { $currency = " $"; $nn = 0; } if ($this->currency == 3) { $currency = " £"; $nn = 0; } Есть switch/case для этих целей. 2. PHP: if (0 && $this->shop_version == 2) Что тут делает 0? 3. Код от html не отделен. Так на взгляд сложно сказать где еще косяки.
Этот код говно. Хотелось бы объяснить свою позицию, но с каждой строчкой пропадает желание. В целом, этот код не совсем конченая параша, но автор недавно поднял уровень из неё. И в принципе, бывают моменты когда такой код оправдываем (на скорую руку, заказчик обезьяна, и т.д. и т.п.), истребуйте ещё исходничков.
@smitt Там еще много всего за комментировано. Следовательно это этап разработки. Каким был код до этого и есть ли целесообразность все переписывать никто не знает. Это не ответы ни о чем а вопрос ни о чем.
Да что тут сказать. Код говно, код нечитаем, код простой, разобраться можно будет любому последователю, но глаза он вырвет. Про свичи не слышал, шаблоны в коде - это капец. Да и хтмл-комментарии не есть гуд. Названия переменных жопа (отчасти. Так, полжопки). Вердикт один, если это "ведущий" программист и он реально написал этот код, а не достался чисто по наследству, то до джуниора это не дотягивает 9это из того, что я увидел. Ситуация в общем может оказаться другой в корне, разумеется)
Благодарю за попытку разбора этого кода. Но, правда, не стоит. Я же не зверь какой-нибудь, поберегите свои глаза
@nospiou просьба была дать оценку, а не начать фантазировать. Ты с 3 часов мозг паришь вместо того что бы посмотреть 5 минут и сказать что то полезное. Без обид, тут многие грешат.
Код там весь такой. Человек его пишет спокойно, размеренно и не торопясь. Не видя ничего в нем... отталкивающего.
function cat_list_draw_v1() название говно PHP: if ($this->currency == 0) { $currency = " ₽"; $nn = 0; } if ($this->currency == 1) { $currency = " €"; $nn = 0; } if ($this->currency == 2) { $currency = " $"; $nn = 0; } if ($this->currency == 3) { $currency = " £"; $nn = 0; } заменить на switch или на массив вообще пример с массивом PHP: $currency = $arr[$this->currency] ?? 0; тем самым в одну строчку сразу весь код ужимается и читается хорошо, позволяя задать все значения где угодно, хоть в конфиге, хоть строчкой выше. PHP: $nn = 0; нн везде равна нулю - выносить ДО ифов будет одна строка, а не четыре PHP: $currency .= $this->price_add_text; обращение к неопределённой переменной в случае, если ни одно значение в ифах не сработало (например если в $this->currency сидит 4) задавать дефолтные значения нужно заранее PHP: $empty_pic = "<img class='product__img_table' src='" . NO_FOTO_SMALL_URL . "' />"; константа видна глобально есть ли в этом смысл? как часто и где ещё используется эта константа? Может лучше заменить на обращение к конфигу? PHP: $no_pic_prop1 = $no_pic_prop2 = $no_pic_prop3 = $no_pic_prop4 = ""; $no_pic_price1 = $no_pic_href = ""; я так не люблю PHP: foreach ($this->products as $row) такой ебанистически длинный цикл, что пипец такое тело цикло нужно пихать в функцию, а уже функцию вставлять в цикл. Тогда читаться будет легко и изменения вносить легко будет. PHP: /* if ($this->shop_version == 1) $cart = ($row['in_shop'] == 1 && $row['show_price'] > 0 && $row['price_usd'] > 0 ) ? "<a title='В корзину' class='cart' href='/cart.php?type=add&id=$product_id'>В корзину</a>" : ""; if ($this->shop_version == 2) { $cart = "<div class='add_to_cart_line'><p class='descr'>Кол-во:</p> <input class='count' id='c_{$row['id']}' name='c_$product_id' value='1' type='text'> <input onclick='add_to_cart($product_id);'type='button' value='Добавить'> </div> "; //$cart = ($row['in_shop'] == 1 ) ? "<a title='В корзину' class='cart' href='/cart.php?type=add&id=$product_id'>В корзину</a>" : ""; } */ научись использовать систему управления версиями не придется сохранять полэкрана старого кода, про который ты не вспомнишь через месяц зачем он тут и страшно его удалять. удаляй, если что - откатишься или найдешь в истории версий PHP: if ($price != "" && $cl == "cost-1") $price = "Цена с НДС: $price"; if ($price != "") $price = "<p class='price_table" . $no_pic_price1 . "'>$price</p>"; if ($price_opt != "") $price_opt = "<p class='price_table" . $no_pic_price1 . "'>$price_opt</p>"; if ($price_sm_opt != "") $price_sm_opt = "<p class='price_table" . $no_pic_price1 . "'>$price_sm_opt</p>"; не дай божэ тебе в четыре часа ночи добавить тут вторую строчку в какой-то из этих ифов, или удалить одну из них не делай так юзай скобочки ВСЕГДА пока всё.
ну тогда я к тому, чей это код. тянет на подмастерье джуниора --- Добавлено --- можешь плс в личку ещё раз отписать я не понимаю, что там конкретно и какой домен