Best PHP chat @phpGeeksJunior - новичкам @laravel_pro - Laravel @golangGeeks - гошка @jobGeeks - вакансии(250000 р/мес) @dbGeeks - базы данных @ebanoePhp - канал не о PHP @jsChat - JS Реклама: https://tinyurl.com/y4jvs7x9 ДР - 28.03.2016
Думал на протяжении пары секунд
Стереотип о «тугости» PHP-разработчиков во многом возникает не из-за самих людей, а из особенностей языка и экосистемы вокруг него:
Низкий порог входа
PHP устанавливается почти автоматически вместе с веб-сервером, и чтобы написать «Hello, World!», достаточно пары строк.
Многие новички стартуют с простых скриптов без понимания архитектуры или принципов программирования, поэтому в сообществе много «разовых» любителей, а не профессионалов.
Динамическая типизация и «прощение» ошибок
PHP автоматически приводит типы (например, строку к числу и наоборот) и не ругается на многое — это удобно, но прививает привычку писать менее аккуратно.
Отсутствие жесткой типизации и слабая система предупреждений стимулируют менее тщательное тестирование.
Обратная совместимость и исторические наслоения
Язык рождался в конце 1990-х как простой шаблонизатор. Со временем добавлялись новые возможности, но старый код никуда не исчезал.
В результате в PHP живут архаичные конструкции (например, устаревшие функции типа mysql_query) и несколько парадигм работы со строками, датами, БД и т. д. Это усложняет обучение и заставляет копировать чужой «не лучший» код.
Обилие «быстрых решений» и «фреймворков-конструкторов»
У WordPress, Joomla, Drupal и множества других CMS-систем миллионы сайтов, и именно их плагин-сообщество часто пишет код «на коленке» ради быстроты.
Разработчики привыкают патчить чужие плагины и темы, а не проектировать архитектуру приложения «с нуля» по лучшим практикам.
Масштаб сообщества
PHP — один из самых популярных языков в вебе: по разным оценкам, около 70 % сайтов используют его где-то на сервере.
Естественно, среди такого числа людей и опытные профессионалы, и «чайники». Шанс натолкнуться на плохо написанный код выше, чем в менее массовых экосистемах.
Итог: сами по себе PHP-разработчики не «тугие» — просто язык и его история провоцируют многие «антипаттерны» и легкость написания некачественного кода. Но при соблюдении современных практик (PSR-стандарты, строгая типизация в PHP 8+, тесты, архитектурные шаблоны) PHP-приложения могут быть такими же надёжными и чистыми, как и на любом другом языке.
Потому что для JS - это стандартная практика, я ж написал
Читать полностью…И почему JS именно? Event loop где только не реализован
Читать полностью…В JS Event Loop - это стандартная практика, в PHP - скорее, редксоть
Читать полностью…Если деда не забаните - то субботин так и будет подолжать лить на всех гавно. Он на деда - возбуждается
Читать полностью…вы там сами между собой решайте, кто кого имеет вечером )
Читать полностью…Если ты явно пишешь данные и знаешь уже что такое может быть - то выше я написал варианты решения
Читать полностью…Там где ты ожидаешь ошибку дубликата - ловишь ее и обрабатываешь
Если ты знаешь что может быть дубликат и надо что-то сделать с обновлением
On duplicate key update
Если знаешь что может быть дубликат и надо проигнорировать вставку - insert ignore into
@systemofcells когда тебе говорят что ты опущен хуже деда, это повод задуматься
Читать полностью…Я тут почитал обсуждения твои и личинки, как ему ещё ебало не обоссали тут я хз
Читать полностью…Можешь пообщаться с ИИ и уточнить места, которые остались для тебя неясны
Читать полностью…Маша, это Event Loop. Следовательно, там не php, а js ) Ну это же база, нельзя быть такой необразованной )
Читать полностью…судя по переписке, ты, дед, имеешь трапа. ну или он тебя
Читать полностью…Я стараюсь затащить в бд все что затаскивается без костылей. Это удобно. Но конечно кто-то скажет что лучше держать такую логику на уровне приложения. Но бд не отьемлимая часть арки и в реальных проектах все возможности хороши - и триггеры и даже собственные ошибки из них.
Читать полностью…Почему ты именно с этой ошибкой решил запариться - непонятно, если десятки других возможных.
Обычно во фреймворках во время валидации проверяется уникальность , а потом происходит вставка. Конечно между валидацией и вставкой что-то может проскочить. Но ровно также и другую ошибку можно словить.
И объяснений не будет. Просто будут харизматичные заявления. Ибо объяснять я нихуя не должен и не буду.
Тебя когда пояснить за ответы просили - ты не удосужился.
Так что ходи теперь опущенным