Почему все ненавидят PHP

Поділитися
Вставка
  • Опубліковано 22 тра 2024
  • Вышла новая версия PHP! Самое время посмотреть, в какую сторону развивается язык, и откуда к нему столько хейта.
    0:00 Вступление
    0:31 Проблема №1
    3:44 PHP без фреймворка
    5:19 Новые фичи в 8.3
    5:33 Typed class constants
    5:55 Dynamic class constant fetch
    6:30 Override attribute
    7:31 Deep-cloning of readonly properties
    8:02 json_validate
    10:46 Randomizer
    12:05 Linter
    12:22 Остальные изменения
    #айти #php #программист #войтивайти #программирование #javascript
  • Наука та технологія

КОМЕНТАРІ • 122

  • @user-nf3ny1zn5p
    @user-nf3ny1zn5p 5 місяців тому +22

    }{орошо что есть 1С, что бы PHPшникам тоже было над чем посмеяться...

    • @ilya_3991
      @ilya_3991 5 місяців тому +8

      На самом деле, 1С-ники говорят то же самое про PHP. А чтобы веселье было обоюдным компания 1С создала Bitrix.

    • @ocean1487
      @ocean1487 5 місяців тому +1

      ​она его не создала, она его купила

    • @ilya_3991
      @ilya_3991 5 місяців тому

      @@ocean1487 покс

    • @vader1413
      @vader1413 5 місяців тому

      И не только про 1С можно так сказать, да и вообще дело вкуса на самом деле. Мне например нравится php и python. Про какой нибудь java вообще молчу, это не для моего ума

    • @vader1413
      @vader1413 5 місяців тому

      Что за сайт у парня на видео с зелёной буквой w?

  • @ITentrepreneur
    @ITentrepreneur 5 місяців тому +4

    Я как человек начинавший свою карьеру с PHP, с языка, который влюбил меня в такое ремесло как программирование, просто из чувства порядочности не могу хейтить этот язык при всех его недостатках, хоть и признаю их и тоже сетую на них. Переезд с языка PHP на другие языки ещё может объясняться банальной усталостью от PHP и его экосистемы и желанием попробовать что-нибудь новое.

    • @soversus5374
      @soversus5374 12 днів тому

      У языка нет недостатков, недостатки у тех, кто их придумывает. )

    • @ITentrepreneur
      @ITentrepreneur 9 днів тому

      @@soversus5374 Язык (программирования) это инструмент, и как любой инструмент он имеет своё прямое назначение. Можно конечно обухом топора забивать гвозди, но лучше для этого взять молоток.

  • @qrthack3233
    @qrthack3233 Місяць тому

    101 мой друг, хочу в backend, выбираю между PHP, Golang, Node.js, что посоветуешь, чтобы легче было устроиться на работу с перспективой? Или с какого языка посоветуешь начать?

    • @AlexeyProgramming
      @AlexeyProgramming  Місяць тому

      попробуй начни с Node.JS, в любом случае JavaScript желательно знать, ну и заодно простенький бекенд научишься делать, про PHP - не знаю, очень много конкуренции и возможно сам плеваться будешь, но для статичных сайтов он вполне подходит, я бы сказал его тоже полезно хотя бы минимально знать как шаблонизатор, у NodeJs в этом плане очень грустно. GoLang если хорошо выучишь возможно залетишь потому что специалистов не так много, но это не самый простой выбор и опять же нужна практика, а я ещё не видел джуниорских вакансий на голанг. Насколько PHP и GoLang перспективны тяжело сказать, пхп по зарплатам и из-за конкуренци и легаси я бы не назвал таким, а GoLang относительно молодой язык, он может вдруг просто умереть если появится стек лучше его по всем параметрам.

    • @qrthack3233
      @qrthack3233 Місяць тому

      @@AlexeyProgramming думал у PHP меньше конкуренции по сравнению например с JS, Python, Java, т.к. курсы сейчас делают не по PHP) и поэтому легче вкатиться будет

    • @AlexeyProgramming
      @AlexeyProgramming  Місяць тому

      @@qrthack3233на самом деле конкуренция прежде всего от фрилансеров и старичков которые за 20 лет выучили пхп, их очень много и делают сайты-визитки именно на нём, это та ниша которую на 100% занял php как самый дешевый и доступный на любом копеечном хостинге, другие стеки стоят намного дороже захостить

    • @ideldotpro
      @ideldotpro 13 днів тому

      ​@@qrthack3233 ты прав
      Конкуренции меньше.

    • @user-es5dl2rb6t
      @user-es5dl2rb6t 13 днів тому

      @@qrthack3233 ты абсолютно прав. В PHP намного меньше конкуренции. А вакансий вполне хватает.
      Автор канала при каждом удобном случае хочет пнуть PHP. Даже сейчас вспомнил каких-то фрилансеров. А тут речь идет о вакансиях)
      Хотя он должен был вспомнить, что на каждую вакансию Python и JS поступают по 500 откликов. Речь идет тут именно про это.

  • @user-es5dl2rb6t
    @user-es5dl2rb6t 13 днів тому +2

    Я открою вам секрет. Чтобы писать на PHP не нужно знать так много функций. По 10-20 функций работы со строками и массивами закрывает 90% задач. Я 80% функций PHP вообще не использовал.
    Никто не пишет на голом PHP. Все используют фреймворки или CMS. А эти функции служат кирпичиками для этих самых фреймворков.

  • @fugirai
    @fugirai 5 місяців тому +1

    Спасибо ютубу, что закинул тебя в рекомендациях на главную! Очень хорошо 🤝🏻

  • @Torbjorn-ph7rt
    @Torbjorn-ph7rt 5 місяців тому +4

    Вобщем вся ненависть этого чела к пыхе описывается одним словом "ниасилил".

    • @AlexeyProgramming
      @AlexeyProgramming  5 місяців тому

      угуу, у любителей пхп когда кто-то начинает говорить о его недостатках ответ обычно либо «ниасилил» либо «ты не умеешь на нем писать» 🤭

    • @Torbjorn-ph7rt
      @Torbjorn-ph7rt 5 місяців тому

      @@AlexeyProgramming справедливо. "Вы просто не умеете его готовить".

  • @user-nf3ny1zn5p
    @user-nf3ny1zn5p 5 місяців тому +1

    8:10 Куда? Когда? В обед?

    • @AlexeyProgramming
      @AlexeyProgramming  5 місяців тому +3

      в объедок, никогда не слышали про объедко-ориентированное погромироване? 🤭

  • @vitiok78
    @vitiok78 5 місяців тому +4

    Согласен, зоопарк с функциями сильно бесит. И, всё же, PHP развивается, и развивается больше в правильную сторону. У меня есть подозрение, что скорость внедрения новых фич немного замедлилась потому что они работают над Дженериками. И вот когда их сделают, тогда мы и получим упорядочивание всех этих функций внутри обобщенных типов в SPL

    • @Roltun
      @Roltun 5 місяців тому

      что такое дженерик

    • @vitiok78
      @vitiok78 5 місяців тому +2

      @@Roltun Generic. Это способ делать обобщенные классы и функции, которые будут работать для совершенно разных типов данных, при этом не используя динамическую натуру PHP, а с явным указанием типов. Т.е. тип является параметром. Строго говоря, т.к. язык динамический, они не особо нужны, но язык уже давно движется в сторону строгой типизации, что очень хорошо, и дженерики - большой шаг в эту сторону

    • @Roltun
      @Roltun 5 місяців тому

      Спасибо @@vitiok78

    • @AlbertCartel
      @AlbertCartel 5 місяців тому

      ​@@vitiok78 php уже как младший братишка java в банкпх начинают потихоньку юзать в последних версиях

    • @soversus5374
      @soversus5374 12 днів тому

      @@vitiok78 , не думаю, что уход в сторону строгой типизации, это благо. Это была и пока есть изюминка языка. Будет ли php столь же популярным при переходе на строгую типизацию... большой вопрос.

  • @mercurykd
    @mercurykd 5 місяців тому +4

    какой классический смузиджиес программист)) а что с дикцией? всё такое инглиш, но почему-то "пэхэпэ" и "питон"..

    • @AlexeyProgramming
      @AlexeyProgramming  5 місяців тому

      это какой программист? я на пхп пишу больше чем на жс 🤭
      вот только граммар нази нам тут не хватало, а то как-то мало конструктивных бесед в каментах 🤭

    • @mercurykd
      @mercurykd 5 місяців тому +2

      @@AlexeyProgramming смузипрограммист имеет следующие паттерны:
      - надменная улыбка при упоминании пхп
      - сравнение с нодой
      - смотря сколько fabric смотря сколько details (c)
      пол ролика хейтишь названия легаси функций - не граммар нази 🤭
      впервые вижу чтобы когда так выпячивают инглиш акцент так жестко прокалываются на "пэхэпэ/питон", прям когнитивный диссонанс)

    • @AlexeyProgramming
      @AlexeyProgramming  5 місяців тому +2

      @@mercurykd второй по популярности бэкенд язык после пхп это нода, с чем еще сравнивать? можно с джавой сравнить или сишарпом, ситуация будет такая же, только в пыхе мусор в глобал спейсе без адекватного нейминга.
      Весь этот «легаси» появился разом в районе 4-5 версии пхп, и сразу с разными названиями - почитай хотя бы про функции конвертации энтити. И есть наверное разница в придирках к написанию/произношению слов в речи, и названиях функций, которые ИЩУТ и НАБИРАЮТ на клавиатуре десятки тысяч пхпистов каждый день 🤭
      Впервые вижу чтобы так жестко дояпывались к произношению, ты что-то не понял о чем я говорил? Англики никогда не делают замечания по акценту или грамматике, это считается очень некультурным, а вот восточные славяне в последнее время в каждом видео «отмечаются», с чего бы это? 🙄🤭

    • @username739
      @username739 18 днів тому +1

      @@AlexeyProgramming ну чувак, ты тут захейтил хрень, которая в разработке применяется чуть реже, чем никогда) Ты еще забыл упомянуть, что в функциях высшего порядка для обработки массивов (array_map, array_filter, array_reduce) порядок аргументов разный)

    • @AlexeyProgramming
      @AlexeyProgramming  18 днів тому +1

      @@username739 кстати да, это важное замечание

  • @soversus5374
    @soversus5374 12 днів тому

    Это называется когда перешел с js на php. )
    Теперь нужен обзор, когда с php на js. )))))))))))))))

    • @AlexeyProgramming
      @AlexeyProgramming  12 днів тому

      Я на пхп больше пишу чем на js, 20 лет уже скоро как 🤭

  • @MyNameIsRishat
    @MyNameIsRishat 5 місяців тому

    Ну ёлки-палки, совсем с толку сбили, так учить PHP или нет? Или лучше сразу выбрать Node JS или Go? Я уже практикуюсь в написании своего первого проекта и уже готов был начать изучать Laravel, а тут блин... такое.

    • @AlexeyProgramming
      @AlexeyProgramming  5 місяців тому +1

      Попробуйте ларавел, но будьте готовы к тому что язык может не понравится, и ноду тоже учите, потом выберете что больше по душе 😉 С Go я бы не рекомендовал начинать

    • @MyNameIsRishat
      @MyNameIsRishat 5 місяців тому

      @@AlexeyProgramming Спасибо за совет!

    • @user-es5dl2rb6t
      @user-es5dl2rb6t 13 днів тому +1

      Да учи смело. Laravel один из лучших фреймворков, которые есть на любом языке.

  • @Roltun
    @Roltun 5 місяців тому +1

    Давайте перепишем русский православный ПХП с правильными нейм спейсами

  • @goodfather7843
    @goodfather7843 5 місяців тому

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

    • @AlexeyProgramming
      @AlexeyProgramming  5 місяців тому

      комма, я из Латвии, мы так разделяем версии 🤭

    • @goodfather7843
      @goodfather7843 5 місяців тому +1

      @@AlexeyProgramming принял, запомнил) Ну латыши...

  • @user-nf3ny1zn5p
    @user-nf3ny1zn5p 5 місяців тому +3

    4:13 Ибаш скриптов

  • @doublelolka
    @doublelolka 5 місяців тому

    Словил себя на мысли, что уже подзабыл, что пхп вообще существует, прочитав титл как рыныры, потупив)

  • @yohohowowowo9471
    @yohohowowowo9471 18 днів тому

    Я вспомнил, почему ненавижу пхп...Это был первый язык, который я собирался изучить(естественно забил), поэтому я очень долгое время думал, что все языки такие. Просто с позиции новичка это выглядело так: мне нужно выучить 200 функций, чтобы начать писать код, чуть более интересный, чем вывод "Hello world!"...Тогда правда и нормальных учебников не было, не говоря уже про видеоролики. Так что можно сказать спасибо пхп за то, что в мире стало одним программистом меньше)))

    • @AlexeyProgramming
      @AlexeyProgramming  18 днів тому

      бывает, пхп тоже один из первых моих языков, и по книжке учил как сайты делать

  • @darkshaman766
    @darkshaman766 5 місяців тому +3

    если ненавидишь пхп то нафига себя мучаешь и пишешь на нем ! не надо мозохизмом заниматься !!! у меня с++ и пхп любимые языки , уже более 20 лет доставляют мне удовольствие и приносят много бобла ... нужено выбирать тот язык который тебя нравится и работать на нем ... а если ты прогер только на словах будишь плеваться и хейтить любой язык

    • @AlexeyProgramming
      @AlexeyProgramming  5 місяців тому

      о, еще один камент от любителя пхп из разряда «если не нравится значит ты просто не умеешь на нем писать»🤭

    • @darkshaman766
      @darkshaman766 5 місяців тому +2

      @@AlexeyProgramming а вчем я не прав ?

    • @AlexeyProgramming
      @AlexeyProgramming  5 місяців тому +1

      @@darkshaman766 в том что инструменты изначально должны проектироваться так, чтобы быть удобными, расширяемыми, и безопасными. А не так, что если не нравится как мы сделали инструмент, то просто не используй его. Ну а утверждение что если плюешься и хейтишь то ты прогер только на словах вообще граничит между глупостью и попыткой оскорбить 🤭 Типа настоящий погромист не замечает недостатки инструмента с которым работает что ли? 🙄

    • @AlexeyProgramming
      @AlexeyProgramming  5 місяців тому

      @@darkshaman766 а что касается С++ - из-за его недостатков и появился rust, та же причина по которой objective c превратился в swift, java в kotlin, ну и php в один прекрасный день превратится во что-то другое, более удобное и с грамотной архитектурой. Мне кажется только человек не пробовавший ничего удобнее пхп будет закрывать глаза на его недостатки, и считать всех осуждающих его болванами и недопрограммистами.
      Это пахнет ригидностью, настоящий программист чтобы оставаться на плаву должен постоянно изучать что-то новое, и пробовать новые инструменты, чтобы ускорить и упростить свой workflow, а не уперто писать тем же стилем и решать задачи тем же образом, которым писал 20 лет назад.

    • @darkshaman766
      @darkshaman766 5 місяців тому

      @@AlexeyProgramming без обид братан, если тебя что то не нравится просто этим не занимайся ... а если взять скажим программирование микроконтроллеров и скада систем то для них язык С С++ является единственым приемлимым и адекватным инструментом

  • @anoninko
    @anoninko 5 місяців тому

    4:47 Чувак, изобрети docker

    • @AlexeyProgramming
      @AlexeyProgramming  5 місяців тому

      не все хостинги позволяют заливать имиджи, и что думаешь если ты запускаешься с контейнера то не можешь накосячить с настройками безопасности и случайно дать доступ к фс? 😉

  • @illoprin
    @illoprin 5 місяців тому +2

    Знаете, друзья, на фоне 1С, php - это ангельски удобный язык. Всё на фоне 1С выглядит лучше
    1Сники не обижайтесь, платформа очень удобная, но язык полное дерьмо, знаю по опыту)

    • @AlexeyProgramming
      @AlexeyProgramming  5 місяців тому +2

      Про 1С кто-то знает вне стран СНГ? Никогда не сталкивался с ним в работе 🙄

    • @DainiusKirsnauskas
      @DainiusKirsnauskas 5 місяців тому +2

      ​@@AlexeyProgrammingМои коллеги из Литвы отдалёёённо слышали...

    • @illoprin
      @illoprin 5 місяців тому +1

      ​@@AlexeyProgramming Это я так, к слову)

    • @user-es5dl2rb6t
      @user-es5dl2rb6t 12 днів тому

      Даже на фоне JS PHP лучше. TypeScript как раз придумали, чтобы не видеть уродливый синтаксис JS.
      Из видео так и не понял чем плох PHP. Если заметили, то автор лишь упомянул один единственный "недостаток" - корявые имена функций. И все хейтеры все зацикливаются на этом. Я программирую 5 лет на PHP и могу с уверенностью сказать, что это вообще не проблема. Весь хейт тут высосан из пальца.

  • @anoninko
    @anoninko 5 місяців тому

    Чувак, от нашего стола вашему столу. Если ты пишешь 15 лет на PHP, который ненавидишь, для тебя есть C#

    • @anoninko
      @anoninko 5 місяців тому

      Сам я с пыха, на котором писал 11 лет, перешёл на Шарп, и всё окей

  • @rianadams7535
    @rianadams7535 5 місяців тому +4

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

    • @AlexeyProgramming
      @AlexeyProgramming  5 місяців тому +3

      А конкретнее в чем JS не годится? 🤭 Функции не только мне неудобно использовать, все плюются на нейминг и разношерстность использования. Я 15 лет пишу на нем просто не зацикливаюсь на нем и есть с чем сравнивать хотя бы, а пхпшники которые толком ни на чем кроме пхп не писали обычно и пишут такие каменты «вы просто его не знаете», даже будь ты 10 раз сеньором 🤭

  • @andreyrudin2286
    @andreyrudin2286 5 місяців тому +1

    PHP достиг уже уровня своего совершенства, много из того что Вы хейтите, как раз для того о чем Вы же сказали в видео, не сломать половину Интернета. Очень люблю PHP, да, те функции в глобальной области можно было бы по объектам распихать, оставив эти функции там же для существующих проектов, но не знай, даже я в этом смысла не вижу. Поэтому и никому это не нужно соответственно. Чтобы не подумали что я как люблю так и знаю только PHP. Нет, JS, Dart, Java, Go, Python. Мне есть с чем сравнить. Со многим в видео согласен, и со многим нет.

    • @AlexeyProgramming
      @AlexeyProgramming  5 місяців тому

      а с чем не согласны? 😉

    • @andreyrudin2286
      @andreyrudin2286 5 місяців тому

      @@AlexeyProgramming ох, я уж забыл. это надо пересматривать, на цитаты разбивать, на это время надо. ну к примеру, про 30 лет назад не надо было собирать данные из кучи микросервисов и отдавать клиенту. Сделан акцент на том, что типа вот поэтому PHP язык для прошлого Интернета, а сейчас уже все современное и нужны другие языки. Ну и сейчас для 99% микросервисы оверхед и не нужны. Т.е. акцентики такие.

    • @AlexeyProgramming
      @AlexeyProgramming  5 місяців тому

      @@andreyrudin2286 ну микросервисная архитектура стала популярной в последние 10 лет с массовым переходом в облако, до этого действительно большинство сайтов и сервисов были монолиты. А микросервисы вводят не потому что это классный баззворд и так «модно», в 99% случаев их введение 10 раз обсуждалось technical authority, апрувилось у стейкхолдеров, и обосновано финансово и технически

    • @andreyrudin2286
      @andreyrudin2286 5 місяців тому

      @@AlexeyProgramming угу, тото потом некоторые возвращаются к монолиту, вспомнить не вспомню, но видел доклады.

    • @AlexeyProgramming
      @AlexeyProgramming  5 місяців тому +1

      @@andreyrudin2286 не справились с поддержкой, бывает 👋 но не на пхп же обратно перелазят

  • @xekcrash1893
    @xekcrash1893 5 місяців тому +3

    В JavaScripte больше недостатков чем в php, но тем не менее хэйтят толкало php

    • @AlexeyProgramming
      @AlexeyProgramming  5 місяців тому +1

      а можно подробнее про недостатки JavaScript? 🤭

    • @xekcrash1893
      @xekcrash1893 5 місяців тому

      @@AlexeyProgramming 1. JavaScript больше относится к процедурному языку а не к ООП. Костыльное наследование, инкапсуляция.
      2. Отсутствуют типы свойства. Из-за этого нужно читать метод и что он делает со свойствами и только тогда мы поймем какой тип свойства нужно передать
      3. Пакетный менеджер. Самый дырявый а так же помойный из всех что я знаю.
      Это первое что пришло на ум, я думаю если покопается там много чего еще можно найти.

    • @AlexeyProgramming
      @AlexeyProgramming  5 місяців тому +4

      ​@@xekcrash1893 1. Другой метод наследования ещё не значит что он костыльный. В целом он даже больше ООП чем PHP, хотя бы потому что в JS аболютно всё это объект, даже Function, Number, и String. Инкапсуляцию я показал на примере - методы работы со String и Array в Javascript скрыты в объектах, а не валяются в Global Space как у PHP.
      2. Не будем забывать что JS это прежде всего язык для веба, работающий на клиенте и пересылающийся по сети, и типы и даже аннотации это лишний оверхед. Остальное решается через TypeScript. Сейчас практически все проекты пишутся на нём и собираются в ES5. Даже те единичные случаи когда команда по какой-то причине не знает TypeScript то есть JSDoc с аннотациями типов, проверки подхватит IDE.
      3. Во-первых, пекедж менеджер это не часть языка, для nodejs помимо npm есть ещё минимум два популярных - pnpm, yarn. Дырявый? Вряд ли, у них есть команда которая все vulnerabilities в пакетах регулярно трекает и их видно при npm audit. Помойный? Он прекрасно решает проблему кросс-депенденси при таком огромном количестве версий пакетов, в отличие от тех же Packagist и pip. И это самый популярный пекендж менеджер на планете, 12 миллионов девелоперов его используют, абсолютный рекордсмен.

    • @bloodjopa
      @bloodjopa 5 місяців тому +1

      @@AlexeyProgramming у пхпшника бомбануло

    • @Roltun
      @Roltun 5 місяців тому

      А вот метод объекта может терять контекст this - это полезно когда нибудь?@@AlexeyProgramming

  • @proxyuser-et
    @proxyuser-et 5 місяців тому

    ОООООО... У кодеров тоже есть свой тридемакс)))))))))) пхп должен купить автодеск)) тридемакс такая же говнина.

    • @AlexeyProgramming
      @AlexeyProgramming  5 місяців тому

      мне кажется пхп больше на блендер похож :))) хотя не, блендер хотя бы вылизали и выкинули большую часть легаси

    • @proxyuser-et
      @proxyuser-et 5 місяців тому

      @@AlexeyProgramming не не блендер норм щас. я хоть и не работаю там но он в CGI тусовке не замечен был особо в говножуйстве. а вот тридемакс это да. это просто уничтожитель нервов. там не убирают функции в новых версиях старые. про них забывают и пишут новые поверх них. И много еще говна. Один ток MCGraph - я хз зачем в триде пакете для художников редактор кода блять уровня какого то ассемблера. без документации!!! А как автодеск любит купить конкурента под предлогом развития и уничтожить его это ваще...

  • @nibunimu
    @nibunimu 5 місяців тому

    а я ещё плачу что JS дерьмо невыносимое

    • @ideldotpro
      @ideldotpro 13 днів тому

      Я так и не понял, в почему PHP дерьмо

  • @alexeys1789
    @alexeys1789 6 днів тому +1

    Блин, первая проблема это просто смешно, не? То есть да, у пыхи есть проблемы с выразительностью, но то о чём говорит автор, а именно про нейминг низкоуровневых глобальных функций, это очень плохой аргумент. Этот аргумент приводится либо не разбирающимися в PHP людьми, либо опытными ребятами, но они и упоминают этот аргумент как не самый значительный.
    Итак, почему аргумент так себе? Во-первых, эти функции применяются не так часто и встретить их можно только в низкоуровневых модулях. Во-вторых, глобально на читаемость кода применение даже рядом функций array_merge и usort никак не влияет. Сейчас в любой IDE можно посмотреть что делает функция просто наведя на неё мышкой.
    Ну а решение в виде применения Laravel и хостинга, серьёзно?) И да, в PhpStorm есть инспекции по типу EA_Extended(вроде так), которые на самом деле бьют по рукам, если не так применяешь тот же in_array.
    В общем, видео от человека, который вообще не понимает что такое PHP и почему на самом деле у этого языка проблемы. Просто запрыгнул в поезд хайпа, когда все внезапно начали говорить о смерти PHP.
    Но я распишу, с чего это началось. На самом деле, около двух лет назад(но могу ошибаться с датами) из команды разрабов PHP ушёл Никита Попов, который вносил в язык нового больше, чем все остальные ребята (Дмитрий Стогов в основном занимается низкоуровневыми штуками по типу JIT и делает колоссальную работу, но это не влияет на возможности именно языка, поэтому он в этот список не входит). После этого появились сомнения, что PHP будет очень медленно развиваться или же не в ту сторону (посмотрите на PHP 8.3 и новые RFC для включения в следующую версию, к слову, автор затрагивает эту тему, но явно не говорит об этом, то есть он банально этого не знает и не понимает XD, 15 лет работает на пыхе, да-да).
    Ну а в чём же действительно проблемы PHP?
    1) отсутствие асинка. Это решается через KPHP, amPHP и подобные штуки, но поддержка в самом языке из коробки - совсем другое дело. Пока это не появится в PHP, нет смысла начинать новые проекты пилить с использованием этого языка
    2) отсутствие дженериков. Тоже база, не понятно, почему этим всё ещё никто не занялся
    3) базовые структуры данных, да и в целом весь SPL просто кусок кала
    4) язык для веба столько лет используется, но до сих пор для всяких классов запросов/ответов мы имеем лишь интерфейсы из PSR'ов, а реализации из коробки отсутствуют
    Вот эти вещи действительно важные, а то, о чём говорит автор... Ну, я от школьников такое слышал, но они не рассказывают про 15 лет опыта и не предлагают мне использовать Laravel, блять)) Не, ну реально, какой ларавель в 2024 году? Действительно сложно было пойти хотя бы почитать критику этого фреймворка?

    • @AlexeyProgramming
      @AlexeyProgramming  6 днів тому

      Какие низкоуровневые модули? Вы ставите дополнительные модули чтобы совершать примитивные операции с массивами или вырезать кусочек строки? Хотя бы половина этих функции используется практически в любом проекте в котором есть обработка данных. Это влияет не на читаемость кода, а на писабельность, потому что нейминг конвенции как таковой нет, и они не являются методами объектов или структур данных как в любом другом ООП языке. То есть в 2024 году мы до сих пор пишем на пхп в процедурном стиле, который как бы полноценный ООП язык с классами и методами. А ещё дубликаты и алиасы тех же функций, или очень похожие делающие практически одно и то же.
      IDE? Ок, чтобы посмотреть что делает функция надо её сперва написать правильно, а когда такая каша в нейминге и типизации это втройне дольше и сложнее. В том же JS или Python методы работы с массивами появляются только при работе с переменной соответствующего типа, то же самое и со строками. Сам факт что без IDE это сложно говорит об отвратительной организации нейминга и постоянном отсутствии контекста.
      Главная и единственная проблема PHP это огромный багаж легаси который он тащит с собой мертвым грузом более 20 лет, который тянет его на дно и не даёт развиваться, а не отсутствие дженериков. Из-за этого легаси и проблемы с неймингом, структурами данных, он обрастает новым функционалом выдуманным на коленке на отебись, чтобы только не сломать то что уже работает, и срочно решить горящие проблемы.
      Laravel сейчас самый популярный фрейм, я начинал с CodeIgniter 15 лет назад. Вы видимо по несознанке сели не на тот поезд (симфони) и сейчас ищете любые способы самоутвердиться унизив фреймворк который по факту требуют в 60-70% вакансий на PHP

    • @alexeys1789
      @alexeys1789 5 днів тому

      @@AlexeyProgramming Спасибо за развёрнутый ответ, не ожидал. Отвечу несколькими частями, не знаю какое ограничение у ютуба на длину комментов

    • @alexeys1789
      @alexeys1789 5 днів тому

      @@AlexeyProgramming 1) Во-первых, как часто возникает потребность в работе с примитивами? Не знаю что у вас там за бизнес логика, но если не считать легаси и мёртвый код, где всё на массивах вместо объектов, то мне с этим приходится сталкиваться крайне редко. Во-вторых, как вы связали низкоуровневые модули и сторонние(я так понимаю, под "дополнительными модулями" имелось в виду именно это) модули? Речь шла о слое абстракции над такими модификациями. Сразу приведу пример, поскольку видно, что с принципами проектирования архитектуры модуля вы не знакомы. Нужно зарегестрировать пользователя, при этом выдать ему слаг. Слаг генерируется, допустим, из половины юзернейма и в конец этой строки добавляется дата регистрации. Итак, у нас есть модель, которая занимается регистрацией пользователя и в процессе регистрации вызывает сервис для создания слагов. Именно в этом сервисе и будет инкапсулирована вся работа со строками. Вот о чём была речь, а не о каких-то дополнительных модулях, но это вообще шок, что такую базу я должен рассказывать.
      "Это влияет не на читаемость кода, а на писабельность". Блин, когда все переживают о том, чтобы их код был читабельным, вас интересует проблема писабельности... Код читается куда чаще, чем пишется (очередная база), поэтому этот аргумент вообще не понятно зачем приведён.
      "потому что нейминг конвенции как таковой нет" да, это факт, однако и язык старый. У всех старых языков есть такие проблемы, PHP не единственный в своём роде. Интересно, вы предлагаете в каждой версии (или что ещё хуже в одной) исправлять названия некоторых функций? Ну, удачи вам потом с переездом на новую версию языка. Спросите у питонистов, каково это, когда в одной из новых версий поломали обратную совместимость, я думаю они расскажут вам какое это удовольствие. Хотя человеку, который за 15 лет(если это правда, конечно) так и не вырос с уровня стажёра, такие проблемы наверняка даже и в голову не приходили. В общем, это сто процентов того не стоит, да и на самом деле это не критично, поскольку уж за 15 лет разработки(или всё-таки нет XD) точно можно запомнить основные функции языка.

    • @alexeys1789
      @alexeys1789 5 днів тому

      @@AlexeyProgramming 2) "они не являются методами объектов или структур данных как в любом другом ООП языке. То есть в 2024 году мы до сих пор пишем на пхп в процедурном стиле, который как бы полноценный ООП язык с классами и методами". Это да, только в таком случае мы работаем не с объектом класса `string`, а с данными, к которым нужно применить операцию. Семантически как по мне более понятно, что если мы хотим привести строку к lowercase, то это операция над строкой, а не над объектом строки со значением 'foo'.
      "IDE? Ок, чтобы посмотреть что делает функция надо её сперва написать правильно, а когда такая каша в нейминге и типизации это втройне дольше и сложнее" опять же, есть набор частоприменяемых функций, а если не знаешь название функции, то можно столкнуться с трудностями, что эта функция на самом деле работает не так, как ожидалось. Вообще удивительно, что вас беспокоит лишь управление языком. Язык программирование - инструмент для решения проблем бизнеса, не более
      "Сам факт что без IDE это сложно говорит об отвратительной организации нейминга и постоянном отсутствии контекста". Это не сложно, я лишь сказал, что эта проблема уже давно решена, не стоит для этого менять язык и ломать BC.
      "Главная и единственная проблема PHP это огромный багаж легаси который он тащит с собой мертвым грузом более 20 лет, который тянет его на дно и не даёт развиваться". Интересно, а вы с другими языками вообще работали? Неужели PHP единственный такой? И да, самое интересное, как это проблема нейминга функций "тянет язык на дно и не даёт развиваться"?))) Если речь не об этом, то я не понимаю, о каких таких проблемах, которые не дают языку развиваться, вы говорите. Да, есть старые вещи, однако они сохраняются чтобы не ломать BC и на деле особенно никому не мешают. Есть куда более значимые проблемы, ваш текущий взгляд называется термином bike-shed.

    • @alexeys1789
      @alexeys1789 5 днів тому

      @@AlexeyProgramming 3) "Из-за этого легаси и проблемы с неймингом, структурами данных, он обрастает новым функционалом выдуманным на коленке на отебись, чтобы только не сломать то что уже работает, и срочно решить горящие проблемы". А можно конкретные примеры, какой такой функционал вводится лишь чтобы не сломать что работает и решить какие-то "горящие проблемы"? Да, есть не самый полезный функционал по типу того же атрибута Override, однако это явно не из-за проблемы нейминга функций.
      "Laravel сейчас самый популярный фрейм, я начинал с CodeIgniter 15 лет назад" с одного ужаса на другой, соболезную. Расскажу вам историю появления лары, о которой вы наверняка не задумывались. Существовал симфони, потом бах, ниоткуда появился ларавель, о котором до этого никто не слышал, и внезапно все начали говорить о нём. При этом на тот момент он на 90% состоял из симфони, а то новое, что он предлагал критиковалось сообществом. Прошло время, но лара всё ещё засматривается на симфони. Да что уж там говорить, даже сейчас в ларе много компонентов симфони. И это не скопированный код, а действительно зависимости от библиотек симфони. Но конечно, куда уж мне учить человека смотреть зависимости проекта, если этот человек 15 лет разрабатывает. Интересно, если вы критикуете симфони, то что же тогда с ларой, которая берёт компоненты симфони?
      Ну и "самый популярный фрейм" это конечно очень сильный аргумент, показывающий мощь фреймворка. А всякие там фасады лары, которые привносят в проект миллион проблем, вас не беспокоят, ларавель ведь всё ещё популярный
      "фреймворк который по факту требуют в 60-70% вакансий на PHP". Ну да, поддерживать этот кал, который был создан на волне хайпа, кому-то же нужно) Только вот новых проектов на этом чуде сейчас создаётся всё меньше и меньше, интересно же почему... Посмотрите статистику, большая часть шарящих людей, использующих не самописный фреймворк, предпочитают именно симфони, при этом как для коммерческих, так и для пет-проектов