Gerga

Gerga
Рейтинг
94
Регистрация
02.08.2015

Sitealert, вы не улавливаете суть или улавливаете, но не принимаете почему-то.

Sitealert, как это ТС сделал? :)

Смотрите, например я рассчитываю, что моя функция


function hello() {
return print 'Hello, World';
}

может быть переопределена. Ну например вдруг пользователь захочет ее модернизировать, если он полезет в код плагина и там отредактирует, то после моего очередного коммита и обновления он просто потеряет свой код (читай работу). Как быть? Вот тут и может быть полезен function_exists. Пример:


if (!function_exists('hello')) {
function hello() {
return print 'Hello, World';
}
}

function hello() {
return print 'Hello, City';
}

hello();

Но я это сделал. потому что предпологал возможность переопределения.

Я объясню немного почему ошибки это хорошо. Ошибки хороши когда мы работаем над программным решением. Устанавливая плагин или редактируя код (а это одно и тоже) - мы работаем над сайтом, если немного абстрагироваться - над программным решением. Если появилась ошибка во время нашей работы - отлично, нужно посмотреть из-за чего и решить, debug в помощью. debug - это лучший помощник программиста! Если использовать function_exists там, где не нужно повторное определение функции - это приведет к непонятному поведении, например

Sitealert:
А потом установите какой-то плагин, который определит такую же функцию раньше Вашей - и будет кирдык сайту.

лучше чтобы был кирдык, чем произошло переопределение функции.

Но ошибки это плохо когда пользователи юзают программное решение. Этого нужно избегать.

Под мы я имею ввиду всех программистов.



---------- Добавлено 13.02.2019 в 21:45 ----------

Sitealert:
ТС это понял исключительно с Вашей подачи, а не по каким-то своим соображениям.

Я и близко не писал, что это уменьшит код. function_exists используется когда это нужно проекту, это действительно так. Т.е. перед началом коддинга делается план на проект, принимаются привила которым нужно следовать.

Sitealert, дело в том, что вы не понимаете когда это нужно, а когда нет. Бессмысленно заниматься раздувательством кода. ТС например по своей внутренней политике понял, что ему function_exists не нужен, значит он не нужен.

---------- Добавлено 13.02.2019 в 21:24 ----------

из-за function_exists могут происходить магические вещи

mmkulikov, безсмысленно делать вещи, которые не пригодятся. Если не нужно каждую функция/класс проверять на повторное объявление - значит не нужно.

Sitealert:
Эта проверка сделана для того, чтобы случайно не назвать функцию таким же именем, какое присвоено какой-то уже существующей функции.

В данном случае проверка не из-за того "чтобы случайно не назвать функцию таким же именем"

Sitealert:
Ага. А потом установите какой-то плагин, который определит такую же функцию раньше Вашей - и будет кирдык сайту.

Вы не видите пользы в ошибках? :) В данном случае ошибка - это лучшее что может быть...

ChrisKorr, зависит от политики проекта. function_exists используется, когда предпологается переопределение функции. В вашем случае без разницы.

mmkulikov, нужна анимация при наведении.

Narek-T:
Руками пишется.

Печально... Может тут есть кто-то, кто подобные элементу уже делал? Облазил этот форум /ru/forum/development , но исполнителя пока не нашел.

rusrob, totamon резонный вам вопрос задал. Попробуйте сами понять как у вас реализован бесконечный скроллинг и подкорректируйте для вывода рекламы. Если времени на анализ и правку у вас нет, можете тут /ru/forum/webmasters-jobs найти исполнителя.

SeVlad:
Почему шутка?

чтобы звучало безобидно, мало ли)

Всего: 811