Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Помогите доделать скрипт ( (https://javascript.ru/forum/dom-window/58263-pomogite-dodelat-skript.html)

Vlasenko Fedor 13.09.2015 21:49

Ребята не хочу долго спорить. Все прийдет с годами, с опытом, когда будете писать для разных сред не зная будет включен и выключен вывод ошибок. Понятно, что в своем коде можно их подавлять, но это также плохой стиль. Если можно писать легче понятней и разборчивей без, то почему бы инет. Это не только стилистика кода, это также и понимание работы его и не выявленных мелких ошибок, которые в дальнейшем могут принести проблемы. Желаю вам успешных Open source проектов где вас смогут покритиковать ваш код, а вы проявить себя. На этом откланиваюсь и покидаю данную тему. Свою позицию я как бы объяснил и высказал :)

laimas 13.09.2015 22:03

Цитата:

Сообщение от Poznakomlus
Понятно, что в своем коде можно их подавлять, но это также плохой.

Вываливая ошибки на страницу, вы делаете неоценимую услугу тому, кто их специально анализирует. Советовать это же делать кому-то тем более не стоит. Отладкой надо заниматься на локальном сервере, а не на удаленном доступном публично.

Проблемы может породить даже ваш "чистый код". Но мы же его пишем, не дяди за нас, значит отдаем себе отчет в том, что делаем, контролируем и переменные, и поведение. Например, я прекрасно знаю, что обычный for будет шустрее против какой-то стандартной функции. Но мне и в голову не придет мысль выбирать между ними, подсчитав дотошно микросекунды, так как я знаю, что в моей конкретной ситуации это будет паранойя.

Или простой пример, выполнив это в 5.3:

$a = array(1, 4, 5);

if($n = end(array_slice($a, -2))) {
    echo $n;
}
//получим - Strict Standards:  Only variables should be passed


и помимо этого верный результат. В старших версиях это будет работать не заикаясь. Но зная об этом поведении, я просто напишу @end(array_slice($a, -2)). И гнев по поводу "говнокода" и его чистоте меня волновать не будет, как и вам никто не запрещает исполнить это поэтапно.


Часовой пояс GMT +3, время: 01:02.