В последнее время я сталкивался с несколькими шутками и комиксами о том, насколько ужасен PHP.
Как полный невежественный язык, почему это? Это мое собственное восприятие или это общее чувство сообщества программистов?
В последнее время я сталкивался с несколькими шутками и комиксами о том, насколько ужасен PHP.
Как полный невежественный язык, почему это? Это мое собственное восприятие или это общее чувство сообщества программистов?
Ответы:
Примечание: это написано с очень мнительной позиции.
Смотрите также: PHP: фрактал плохого дизайна
Давным-давно, когда Интернет был молодым, вы написали веб-приложение на Perl. Это было действительно так. Это был ваш единственный выбор (если вам не нравилось работать со строками в C). (И да, я прикрываю отличные полосы ASP и тому подобное ... Я бы предпочел забыть о тех днях.) Существовали большие и большие веб-приложения, написанные на Perl. И было много, много штук ... ну, дерьмо, написанное на Perl. Вы все равно можете найти их, если посмотрите - глючные скрипты CGI, которые кто-то собрал, даже не приблизившись к дезинфекции их входных данных.
По мере того, как веб становился все более корпоративным, большие и огромные приложения перемещались в другие среды, которые были лучше разработаны для обработки тысяч соединений (в то время perl не было). Те, кто мог выучить новый язык, перешли на Java (это был лучший выбор для многих фреймворков). Те, кто не мог, ну, был этот язык, который был похож на Perl и делал некоторые вещи лучше (не нужно было форкать процесс для каждого запроса). Это был php.
Php вырос органически ... если вы можете назвать монстра Франкенштейна органическим. Много хаков (вы знали, что оригинальная хеш-функция для имен функций была strlen ?). Частичные вещи добавлены к основному языку (а не к библиотекам), которые все еще остаются там сегодня. Это не так красиво. (Ткните в Reddit's / r / lolphp, который высмеивает многие из этих несоответствий ... Вы знали, что -1 month
это всегда 30 дней ?)
И хотя в php были встроены большие и большие вещи (посмотрите на WordPress в качестве примера), он все еще остается монстром, скрывающимся под эзотерикой, о том, как все работает (или не работает, или какие части вещей работают в большинстве случаев). время).
Это быстрый и простой язык для изучения, поэтому многие люди, которые не хотят тратить время на изучение языка, используют его. А потом, когда он сломается, и вы должны поддерживать это сейчас? Ну, язык, который допускает такое отсутствие дисциплины со стороны программистов, которые не всегда понимают, что они делают, приводит к некоторым очень «интересным» ошибкам.
Это язык быстро собранных веб-сайтов и наполовину запеченных плагинов WordPress. Где-то 16-летний написал код для своего соседа за 20 долларов или студента колледжа за пивные деньги ... зная, что они никогда не будут смотреть на это снова. Пройдите немного по php-тегу Stack Overflow и подумайте, что вы можете поддерживать этот код когда-нибудь.
Помните, что код всех остальных всегда отстой. И если вам приходится иметь дело с чужим кодом в php - это отстой.