Что такое PHP? Мое мнение об этом языке программирования

แชร์
ฝัง
  • เผยแพร่เมื่อ 27 ธ.ค. 2024

ความคิดเห็น • 597

  • @SergeyNemchinskiy
    @SergeyNemchinskiy  ปีที่แล้ว +3

    🦊 Обучение PHP с ментором в FoxmindEd - go.foxminded.ua/3PgJGer

    • @Vlad_a450
      @Vlad_a450 ปีที่แล้ว

      К стати, есть интересный видос на ютубе, в котором "чистый" код противопоставлен "быстрому" коду. Может будет интересно разобрать! )

    • @alexandrapersukova
      @alexandrapersukova ปีที่แล้ว

      @@Vlad_a450 в п'ятницю вийде відео на схожу тематику

    • @daymonmoss7867
      @daymonmoss7867 ปีที่แล้ว

      Зачем нужен лендингу CMS ?

    • @daymonmoss7867
      @daymonmoss7867 ปีที่แล้ว

      В PHP есть строгая типизация.

    • @80689248440
      @80689248440 ปีที่แล้ว

      @@Vlad_a450 я считаю что перегружать ненужно даже стилями и лишним js - на выходе килобайты, но только те о которых я вкурсе и уверен)) чтотамктотам я код читать не буду - у безпонтовой либы 200+папок для понта и ни один файл не используется - сосите жопу продажники ларавеля - меньше но качественней. я даже плагины вп видел где картинка на 60метров))

  • @edkachalov
    @edkachalov ปีที่แล้ว +330

    Знак $ напоминает PHP разработчику зачем он пишет код.

    • @murataly.osmonaly
      @murataly.osmonaly ปีที่แล้ว +21

      Мотивирует

    • @hacktivist86
      @hacktivist86 ปีที่แล้ว +1

      я ещё он помогает сразу увидеть переменную)

    • @foro4ka887
      @foro4ka887 11 หลายเดือนก่อน

      поржал)

    • @dreamer_vi905
      @dreamer_vi905 3 วันที่ผ่านมา

      хорош

  • @indigoram89
    @indigoram89 ปีที่แล้ว +194

    Скажу как есть. Разрабатываю на PHP и Laravel, включая крупные проекты. Очень нравится! За несколько лет НЕ пожалел ни разу. На Laravel писать вообще одно удовольствие, экосистема близка к идеальной, а работы хватает с головой - приходится отказываться от проектов... В сумме зарабатываю больше 5k$, так что PHP, как говорится, кормит. Рекомендую!

    • @АртемАношин-ч1м
      @АртемАношин-ч1м ปีที่แล้ว +5

      Поделись работой)

    • @tigrpoehal1836
      @tigrpoehal1836 ปีที่แล้ว +1

      тоже решил перейти на laravel с Yii2, сделаю пет проект какой нибудь

    • @sergeypekar1058
      @sergeypekar1058 ปีที่แล้ว +2

      Я тоже, когда фреймворки увидел - мое мнение сразу о нем изменилось

    • @woodzimierz9621
      @woodzimierz9621 ปีที่แล้ว +3

      @@tigrpoehal1836 вирішив перейти з Yii2 на Laravel і зробити пет проект? Ти що ніде не працюєш? Так просто знайди роботу на тому, що знаєш, замість даремного вбивання часу.

    • @80689248440
      @80689248440 ปีที่แล้ว +2

      пожамкал фреймворки - не понравилось что запросы типа построй меню с подкатерориями будут драконить бд не 1-2 запроса а более. я очень критичен и в кол-ве строк тоже. пишу на нативном и хендмейд с опытом 15+ лет столько не зарабатываю( ни с кем не работал - фриланшу 24/7 - дайте совет

  • @Zyozikexclusive_ZX
    @Zyozikexclusive_ZX ปีที่แล้ว +132

    Пыху предрекают смерть минимум последних 10 лет. А он всё также живее всех живых. И все также очень много Бэка на пыхе. Нормальный язык с большим количеством вакансий на территории Украины и других стран. З.П. на пыхе не лям, конечно, но выше чем у большинства офисников и менеджеров. ПыХ живее всех живых!

    • @john1989666
      @john1989666 ปีที่แล้ว +8

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

    • @Zyozikexclusive_ZX
      @Zyozikexclusive_ZX ปีที่แล้ว +2

      @@john1989666 , а сейчас уже восьмая версия и она ещё на порядок круче. ПыХ рулит.

    • @VasylPe
      @VasylPe ปีที่แล้ว +2

      ​@@john1989666 нова версія php + фреймворки типу Laravel дали йому друге дихання:)) Ну і не забуваємо про Wordpress, на якому накліпали стільки сайтів, що мама мія і з часом треба їх або фіксати, або переписувати. І якщо переписувати, то також вибирають PHP:)

    • @DiabloSat_off
      @DiabloSat_off ปีที่แล้ว +1

      Но сейчас чаще и чаще предпочитают при разработке node js.

    • @BendermoneyCorp
      @BendermoneyCorp ปีที่แล้ว +6

      ​@@DiabloSat_offнавіщо нода для малого і середнього бізнесу? Я ось ноду пишу і коли побачив скільки всього з коробки є у пихи, не розумію реально. На ноді все недоразвито, треба мільйон ліб щоб написати щось просте.

  • @darkshaman766
    @darkshaman766 ปีที่แล้ว +56

    спс. Не понимаю людей которые хейтят пхп , уже 15 лет рублю бабло на нем и вообще проблемы не вижу. А по поводу стрелок, я на пхп перешёл из С++ и поэтом он как родное

    • @80689248440
      @80689248440 ปีที่แล้ว +1

      я тоже не понимал и даже немного клал на этих людей с хабра))

  • @kobalt-tv-777
    @kobalt-tv-777 ปีที่แล้ว +106

    Да -> это странно, вместо точки. 😊 Зато знак $, очень хорошо помогает с первого взгляда обнаружить переменные в коде.
    Облегчает понимание, когда нет перед переменной "примитивных" типов.

    • @Жратвейлер
      @Жратвейлер ปีที่แล้ว +14

      А стрелочки имхо позволяют быстро понять, что мы имеем дело с объектом, так же быстро понять, где имя переменной с объектом, где название свойства или метода, а где еще вложенное свойство или метод какой-то. С точками иногда приходится всматриваться, если длинные названия у свойств и методов.

    • @МихаилКрамер-н7ш
      @МихаилКрамер-н7ш ปีที่แล้ว +13

      Стрелку с плюсов взяли. Подчеркивает, что объекты по ссылке хранятся

    • @kobalt-tv-777
      @kobalt-tv-777 ปีที่แล้ว

      @@МихаилКрамер-н7ш после C#, не привычно ещё

    • @bubblesort6368
      @bubblesort6368 ปีที่แล้ว +12

      ​@@МихаилКрамер-н7ш я думаю настоящая причина стрелочек в том, что точка уже зарезервирована конкатенацией была.

    • @natsurukasumi3370
      @natsurukasumi3370 ปีที่แล้ว +5

      Знак доллара конечно же помогает увидеть переменную сразу, но это какой-то сомнительньій плюс. С тем же успехом в плюсьі можно записать джавовские варьі, подсвечивающиеся в редакторе. Поле и бєз того будет сразу видно по код стайлу

  • @xezdx
    @xezdx ปีที่แล้ว +28

    Знак бакса хорошо показывает где переменная, а где что-либо ещё, например константа. Стрелочка для объектов тоже очень крутая вещь так как легко опять же видно. Да и точка уже занята под ещё более крутую вещь - конкатенация строк. В других языка есть путаница что сделает знак "+", в ПХП сразу понятно что если стоит плюс, то конвертируются строки в числа, а с точкой всё наоборот в строки, тогда как JavaScript, который хоть и не типизированный, но будет создавать проблемы если самому не следить за типами, а пайтон так и вовсе будет выдавать ошибки. Так что PHP очень грамотно сделанный язык.

    • @ИмяФамилия-ш2г9ь
      @ИмяФамилия-ш2г9ь ปีที่แล้ว +4

      отдельный оператор для конкатенации это и правда удобно. В JS с этим бывают недоразумения

    • @hacktivist86
      @hacktivist86 ปีที่แล้ว

      @ivanpetrov2435 с пхп7, особенно 8 уже всё для этого есть

    • @hacktivist86
      @hacktivist86 ปีที่แล้ว

      абсолютно согласен)))

  • @denizsincar29
    @denizsincar29 ปีที่แล้ว +13

    я, являясь незрячим недопрограммистом, использующим программу чтения с экрана, кодил грязно, без форматирования. писал на autoit и специальном незряченском игровом движке BGT.
    когда я влез в питон, как раз таки он и научил меня делать отступы во всех языках, на которых я немного писал после змеи.
    аа, ну и vscode, который кстати очень хорошо работает с программами чтения с экрана, тоже отступы помогал делать. В настройках программ, читающих экран для незрячих, есть пункт «озвучивание отступов».

  • @OlegParfenov-d3y
    @OlegParfenov-d3y ปีที่แล้ว +6

    Сергей, отличные мысли!!! И подача тоже. Ждем обзор на GO

  • @МаксимПинегин-м4г
    @МаксимПинегин-м4г ปีที่แล้ว +60

    На счет строгой типизации у php7.4+ есть такая возможность указывать типы данных, почему-то Сергей об этом никогда не упоминает, а вспоминает давно богом забытый php3/4/5 , которые уже никто не юзает

    • @trial_bot
      @trial_bot ปีที่แล้ว +3

      ну так и в питоне можно типы указывать, это всё ещё не делает язык не динамически типизируемым

    • @reloginn4911
      @reloginn4911 ปีที่แล้ว +11

      @@trial_botв питоне интерпретатор игнорирует указывание этих типов, в пыхе же бросит исключение если ты ждешь string, а получаешь int

    • @xezdx
      @xezdx ปีที่แล้ว +2

      @@trial_bot вы не поняли идею указания типов. В ПХП человек делает это для себя чтобы IDE и сам язык подсказывал программисту что возвращает метод например, а язык остается динамически типизированным. Таким образом ПХП упрощает написание программ и позволяет использовать преимущества типов не налагая обязанностей, они появляются только если ты этого сам хочешь.

    • @liravesnovaya242
      @liravesnovaya242 ปีที่แล้ว +10

      @@xezdx в отличие от питона, в котором, да, типы - это чисто подсказка для других программистов и для IDE, в PHP если вы указали, что функция принимает аргумент класса A, то если вы подсуните ему объект класса B, то PHP выдаст исключение (TypeException - если мне не изменяет память). А в python хоть что укажите, он всё равно примет.

    • @xezdx
      @xezdx ปีที่แล้ว +2

      @@liravesnovaya242 Так в этом и вся соль. Проблема нетипизированных языков в том, что компилятор не знает что там должно быть и не может проверить. Но для надежности если программист указал, то это нужно проверять и выдавать ошибку для быстрой отладки FAIL FAST, а если ошибка просто съедается, то эта фича уже бесполезна, с тем же успехом можно комментарии над каждой функцией писать, они хотя бы в подсказках выводятся.
      Вообще пайтон смешной язык, он наступил на все грабли какие только можно.

  • @vitiok78
    @vitiok78 ปีที่แล้ว +13

    На последних версиях PHP можно писать практически такой же типизированный код, как в Typescript. Ещё буквально немного, и все будет "идеально"
    Единственный недостаток PHP для меня - это отсутствие встроенной асинхронности и опасность создания долгоживущих процессов.
    Поэтому совет: учите PHP для основной части проекта, а когда вам понадобится что-то асинхронное или долгоживущее, изучите Go, и используйте его в связке с вашим PHP проектом.

    • @buldezir
      @buldezir ปีที่แล้ว +1

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

    • @vitiok78
      @vitiok78 ปีที่แล้ว +6

      @@buldezir Есть одно малюсенькое НО. Типы PHP работают в рантайме. А Typescript - это-ж фактически просто продвинутый линтер, ничего более. Его подводные камни, которые JavaScript всегда готов нам подставить, намного опаснее, чем менее формализованная типизация в PHP

    • @buldezir
      @buldezir ปีที่แล้ว +1

      @@vitiok78 я согласен что ТС это линтер, но изначальный коммент и мой ответ был не про это.

    • @vitiok78
      @vitiok78 ปีที่แล้ว +4

      @@buldezir Я скажу так: иногда с системой типов Typescript приходится сражаться. И не иногда, а очень часто. Это просто неприятно, и не приносит такого уж большого бенефита. На PHP проще это всё написать, при этом безопасность кода практически на таком же уровне. И если в PHP завезут буквально пару фич, то о для меня это будет идеальным вариантом

  • @Juliania292
    @Juliania292 ปีที่แล้ว +2

    Интересно и убедительно! Благодарю вас! Больших успехов вам и всем слушателям!❣️

  • @MrKOHKyPEHT
    @MrKOHKyPEHT ปีที่แล้ว +27

    Судя по вакансиям могу сказать что php как и Java - не умрёт никогда )

    • @vaynesim2729
      @vaynesim2729 ปีที่แล้ว

      Имеешь ввиду количество вакансий?)

    • @hallgamal6302
      @hallgamal6302 ปีที่แล้ว

      нет ничего вечного...
      пхп тоже не вечен...

    • @vladislavkomkov5178
      @vladislavkomkov5178 9 หลายเดือนก่อน

      ​@@hallgamal6302 ну тогда и пайтон не вечер...

  • @MrMr-rz6vr
    @MrMr-rz6vr ปีที่แล้ว +18

    $ перед переменной -- это дополнительная мотивация кодеру, чтобы он быстрее сделал проект и получил деньги))

    • @gnidkoav
      @gnidkoav ปีที่แล้ว

      😂👍

  • @TimurShemsedinov
    @TimurShemsedinov ปีที่แล้ว +12

    Защита дипломов:
    - Тема работы "Разработка интернет магазина унитазов на php"
    - Не подходит, примитивно, уберите php, добавьте архитектуры
    - Ок, "Разработка интернет магазина услуг архитекторов ПО"
    - Вот! Другое дело

    • @ApelsinovIvan
      @ApelsinovIvan ปีที่แล้ว +4

      А что Вы можете по Пыхе сказать, Тимур? Вы писали на PHP?

    • @TimurShemsedinov
      @TimurShemsedinov ปีที่แล้ว +7

      @@ApelsinovIvan Признаю, писал на php ну даже года 3 и достаточно профессионально умею, даже не забыл, потому, что мне на ревью приносят все время студенты и по работе. Язык как язык, когда-то был босяцким, а теперь повзрослел, оброс культурой, я бы даже сказал, что сообщество у него более культурное, чем у многих современных и модных языков.

  • @rubenmarkosyan4736
    @rubenmarkosyan4736 ปีที่แล้ว +6

    "Немного раздражает наличие долларов, но к этому можно привыкнуть." - ох уж эти программисты 😂

  • @resolution07
    @resolution07 ปีที่แล้ว +10

    Комментирую каждый ролик про PHP.
    declare(strict_types=1);

  • @Tornado-ln7fq
    @Tornado-ln7fq ปีที่แล้ว +2

    Классное видео, php forever))

  • @SerafimArts
    @SerafimArts ปีที่แล้ว +7

    Отраслевой стандарт - это Symfony. А Laravel - это стандарт для формошлёпства)
    Ну и да, джанго и рельсам до Laravel как до луны, если мы про функционал.
    Ну и далее про симфу тоже дичь. Доктрина - это ни разу не часть Symfony. А то что есть пакет/бандл для её интеграции не делает это одним и тем же. Это примерно как сказать, что хибернейт часть спринга. Или TypeORM часть метеора или ангулара.
    Ну и про пых тоже, странно в 2023ем называть пых, у которого ещё более 5ти лет назад появилась опция строгой статической контрактной типизации называть языком с динамической))) Он по части строгости, при желании, уделывает ту же жабу в пух и прах, благо в нём и алгебраические типы есть и T означает T, а не null или Object (привет NPE!). И это мы про стат. анализ ещё не начали говорить, где можно указать типы, вида "не пустая строка в нижнем регистре".
    Короче, начало для новичков - это понятно. А дальше уже отсебятина, которая основана лишь на предположениях и домыслах. Видно что Сергей давно отстал от трендов и оценивает язык по версии 5-10 летней давности.
    P.S. Ещё отдельно хочу придраться к тому, что автор даже поленился чуть-чуть подумать на тему причинно-следственных связей. Например, если вместо стрелочек будут точки, то на что менять оператор статического доступа к методу? Там тоже два символа. Или на что менять тогда оператор конкатенации? На плюсик как в JS? Чтобы от перемены мест слагаемых сумма менялась?) Не, понятно что автор как угодно может говорить: "нравится" или "не нравится". Но как бы тут претензия к попытке объективного суждения, а фактически неоспоримые плюсы языка преподносятся как минусы, что звучит откровенно глупо и на уровне какого-нибудь Хауди-Хо. Уж сорян.
    P.P.S. Ну и наброс на джаву: В PHP есть кооперативная многозадачность из коробки, а в Java через костыли и Project Loom. В PHP есть алгебраические типы, поддерживающие LSP. В Java её можно добиться, взяв Ceylon или Scala (т.е. взяв любой другой язык, кроме Java, kekw). В PHP есть пакетеный менеджер, решающий все возможные конфликты версий. В Java придётся пройти 10 кругов ада, чтобы подружить две разные версии одного вендора так, чтобы проект заработал (ибо один вендор требует одну версию, а другой - другую. Это частое явление). В PHP зависимости опциональные и можно реализовывать фектори, основывающиеся на опциональных контрактах/интерфейсах, а в Java будь добр захардкодить зависимость в classmap. В PHP за счёт метапрограммироования и интроспекции языка можно в пол пинка реализовать high-order messaging и прочие функциональные штуки (каррирование, частичное применение), а в Java или байт-код патчить (здравствуй Lombok) или никак (ибо рефлексия - максимум что доступно). В PHP можно инлайнить сишный код (или даже LLVM IR), а в Java будь добр собери отдельную обвязку для JNI. Ну и т.д., так можно долго очень)))

  • @Shirirudesu_
    @Shirirudesu_ ปีที่แล้ว +4

    В университете Европы, где я обучаюсь, лектор посоветовал взять Laravel на курсовую, сказал, что эти пару лет хорошо его нам выучить будет, отрихтовать, причем да, обмолвил, что за пару лет там все вдоль и поперек можно выучить, а потом уже что то новое узнавать по мере выхода версий, и работу есть большой шанс найти, ибо здесь маленький городок, и то, присутствует компания, которая пишет интернет магазины на Ларе, в неё можно будет пойти на практику даже, насколько я знаю.
    Спасибо за ролик, он еще немного, но подтолкнул меня к изучению Пхп.

  • @joehaar1466
    @joehaar1466 ปีที่แล้ว +13

    Главное в этой жизни найти того, кто будет вас любить так же сильно, как Сергей Немчинский любит Python, если вы понимаете о чем я))) Более часто упоминаемого языка на этом канале, наверно, нет))

    • @justtwic
      @justtwic ปีที่แล้ว +1

      Це 100%, здається мені, що Сергій ще 1000 разів згадає про Python і комюніті прийме рішення "пора згортатися", та закриють підтримку Python))))

  • @sumburno
    @sumburno ปีที่แล้ว +1

    Подскажите дилетанту: так он и для бэкенда и для фронтенда?

  • @mirwinn8992
    @mirwinn8992 หลายเดือนก่อน

    Где можно глянуть хорошие уроки для PHP? Хочу начать учить пхп вот смотрю разные уроки но хочу увидеть совет от вас

  • @АшурМезлан
    @АшурМезлан ปีที่แล้ว +17

    Батя, спасибо тебе за просвещение начинающих разработчиков. ❤

  • @kxf155
    @kxf155 ปีที่แล้ว +8

    Сергей у Laravel тоже есть ORM, называется Eloquent и половинна кишков под капотом Laravel от Symphony собственно. Я PHP разработчик, начинал с Udemy и Laravel, с ним и остался. Сейчас работаю в компании юзающей два языка и да - согласен, Ruby это боль для тех ктол не привык, ео если начнешь привыкать - поймешь его прелесть. Да не читаем с ходу, но зато там столько конвенций, делающих код стандартным во всех приложениях. Что мне не нравится в Rails и почему я не очень хочу с ним продолжать а дпльше идти по PHP - слишком высокоуровневый фреймворк. Все что происходит оно не очевидно и для новичка пришедшего из Laravel кажется магией. Да, ничего не читается и непонятно куда что уходит. Но тут надо сесть и изучить, прям конкретно. Rails это такая тема в которой нужно знать конкретно RUby и конкретно Rails. Нельзя прийти с C# с 10 летним опытом и за день понять Rails не читая с нуля доки. Спасибо за видео! Всем любовь и мирного неба над головой.

  • @smirnizky
    @smirnizky ปีที่แล้ว +2

    2:20 - Насчёт операторов адрессации "." и "->". В С++ есть и то, и другое. "." - это когда объект (структура) статические, а "->" - когда динамические.

  • @sani4051992
    @sani4051992 ปีที่แล้ว +2

    Сергей, вы упомянули, что у Symfony есть своя ORM, но Laravel тоже пользует ORM - Eloquent. В чем же преимущество Symfony'ского варианта если вы его отдельно выделили?

    • @GenaTolstij
      @GenaTolstij ปีที่แล้ว +1

      Тут стоит смотреть в сторону холивара "ActiveRecord vs Data Mapper". Плюс доктрине, которая в симфе, симфа то не особо и нужна - оно и само умеет быть отдельным ORM.
      Например перелазя с yii2 с ее AR на симфу я с доктрины поначалу очень сильно плевался, не понимая какого черта у меня запросы отдельно, данные отдельно, а как это всё поженить вообще непонятно и почему я в entity не могу сервис заинжектить. Потом поумнел - попустило :)

    • @sani4051992
      @sani4051992 ปีที่แล้ว

      @@GenaTolstij Учитывая, что я новичок - про "ActiveRecord vs Data Mapper" и доктрину я не шарю - поэтому приму так, что для симфы в принципе ORM не нужна, так как он сам ORM, а свой ORM лучше встроенного😁

    • @GenaTolstij
      @GenaTolstij ปีที่แล้ว

      @@sani4051992 , интересная логика... Учитывая что по умолчанию кроме доктрины других путей общения с базами у симфы не предусмотрено.

    • @woodzimierz9621
      @woodzimierz9621 ปีที่แล้ว

      @@GenaTolstij Доктрина сама і є окремою ОРМ, вона була ще до появи другої Сімфоні. Насправді з Сімфоні можна використовувати будь яку ОРМ, навіть той самий Елокуент, якщо є бажання.

    • @woodzimierz9621
      @woodzimierz9621 ปีที่แล้ว

      @@sani4051992 не робіть помилкових висновків, бо з часом вони у вашій свідомості закарбуються як "істина" і буде дуже важко їх позбутися, а заважатимуть вони дуже сильно. Просто розберіться що це за патерни актив рекорд та дата мапер. Почитайте Фаулера, він роз'яснює.

  • @tar95
    @tar95 8 หลายเดือนก่อน +1

    Є таке питання: хочу зробити веб сайт з базою даних яка в майбутньому може мати терабайти. має бути все швидко і наватаження в майбутньому може бути сотні мільйонів користувачів в місяць. Також сайт має бути синхронізований з додатками для айфон та андроід! Підкажіть будь ласка які технології мені вибрати?

    • @Dzystas
      @Dzystas 7 หลายเดือนก่อน +1

      База вот что будет узкое горлышко бутылики. А пыха справится с задачей на ура ей не впервой.

  • @igoraleksandrovich1498
    @igoraleksandrovich1498 ปีที่แล้ว +2

    Наоборот наличие долларов это преимущество PHP. И стрелочки довольно красиво.

  • @vatakiller
    @vatakiller ปีที่แล้ว +3

    Обращение к методам/свойствам объекта через стрелку не является чем-то необычным для си-подобных языков. В тех же С++ и Perl тоже используется стрелка в ООП, а в С - для обращения к полям структуры. Так что стрелка в PHP - это тоже скорее всего влияние Perl'a.

  • @VladKochetov
    @VladKochetov ปีที่แล้ว +3

    10:40 Пишу на Python около 3 лет. Никакой разницы с фигурными скобками не замечал , всё равно абсолютно во всех языках принято делать отступы после начала нового блока кода, ведь его тогда легче читать. Объясните, кто как понимает, будет интересно почитать

    • @woodzimierz9621
      @woodzimierz9621 ปีที่แล้ว

      у інших мовах зайві/недостатні пробіли не викликатимуть помилок, які складно шукати.

    • @VladKochetov
      @VladKochetov ปีที่แล้ว

      @@woodzimierz9621 пробіл видно очима одразу, бо весь код здвинутий вбік. Фігурну дужку на відміну від цього можна і не помітити одразу. Це скоріше питання смаку, але ніяк не проблема мови програмування

    • @SaintDaemon
      @SaintDaemon ปีที่แล้ว +2

      Для мене правильні пробіли краще ніж фігурні дужки. Два зайці одним пострілом: і правилне форматування і відсутність зайвих символів (фігурних дужок). Так само як відсутність стрілки краще ніж її наявність...відсутність фігурних дужок краще ніж їх наявність.
      Це ще можна назвати "вкусовщина", але точно не мінус як говорить Пан Сергій в кожному відео)

    • @woodzimierz9621
      @woodzimierz9621 ปีที่แล้ว

      @@VladKochetov Насправді? Не завжди. Я на пайтоні писав доволі складні застосунки, тому кажу зі свого досвіду, якщо велика кількість рядків коду, а зсув відбувся вище за межами екрану, то це та ще веселуха шукати його.

    • @VladKochetov
      @VladKochetov ปีที่แล้ว

      @@woodzimierz9621 якщо в вас проблема з читанням коду - то це поганий код або архітектура

  • @Reznik_421
    @Reznik_421 ปีที่แล้ว +1

    Какие языки программирования изучать чтобы развиваться в VR/AR?

  • @КонстантинБратищев-з3п
    @КонстантинБратищев-з3п ปีที่แล้ว +14

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

    • @smartdog666
      @smartdog666 ปีที่แล้ว

      strict_types работает только для скалярных типов, если вы об этом

  • @no101vmv
    @no101vmv ปีที่แล้ว +3

    Работаю в банке, работал еще в 2х финтехах. На пхп. Интеграция с другими платежными системами, с кучей внешних систем и так далее. Дохрена всего. Больше всего работаю с симфони. Это порт джавовского спринга) А еще в современном пхп всё отлично поддерживается и есть супер строгая нулобезопасная типизация. К тому же она еще и статичная получается с версии 7.4. А с 8 версии вообще есть енамы.

  • @sweetchip7043
    @sweetchip7043 5 หลายเดือนก่อน

    Самый добрый дядька в интернете

  • @freemirror
    @freemirror ปีที่แล้ว +1

    Огромное спасибо за видео!

  • @ДмитрийЛобанов-ж1н
    @ДмитрийЛобанов-ж1н ปีที่แล้ว +4

    Будет фурор когда видео начнётся со слов - "Здравствуйте, меня больше не зовут Сергей Немчинский!")

  • @fear_ctpax
    @fear_ctpax ปีที่แล้ว +13

    Огромное спасибо вам за то, что даже после 24 февраля, после начала войны вас всё ещё зовут Сергей Немченский!

    • @mexanikilya_
      @mexanikilya_ ปีที่แล้ว +4

      Слава Україні!

    • @mexanikilya_
      @mexanikilya_ ปีที่แล้ว +3

      Героям слава

    • @lifeislife2819
      @lifeislife2819 ปีที่แล้ว

      @@mexanikilya_ Ты долбик. Путин же молодец - помни!

  • @BogachevCHANEL
    @BogachevCHANEL ปีที่แล้ว

    Сергію, дивлюсь вас вже кілька років, і от маю цікаве як для мене питання. А чому ви ніколи не говорите про мову програмування VisualBasic? Не в тренді чи як? Прошу надати відповідь. Дякую

  • @enotnt
    @enotnt ปีที่แล้ว

    Харизматичный бро)))

  • @makord_ua
    @makord_ua ปีที่แล้ว +4

    Как программист с 10 летним стажем у web разработке php использую в 90% случаях, остальные node.js если нужна асинхронность, самый простой пример это чаты, или например нужно выдавать результат во время работы скрипта, например выгружаешь огромный файл, и ты выдаёшь % обработки, и да, на php тоже можно такое, но node подходит гораздо лучше.

    • @sergeyzhukov1370
      @sergeyzhukov1370 ปีที่แล้ว

      Вы что же используете те же инструменты что и 10 лет назад? Веб разработка уже давно на 90% какой нибудь javascript фреймворк типа react или vue, остальное это апи и бекенд и совсем необязательно на php.

  • @mashashak_4980
    @mashashak_4980 ปีที่แล้ว +1

    Спасибо за видео 🔥

  • @evgeniylitvin8077
    @evgeniylitvin8077 ปีที่แล้ว +24

    Небольшой плюс от $ в начале переменной - это явно различает что это переменная, а не константа.
    Ну и можно реализовать конструкции вроде динамического объявления или обращения к переменным
    $a = 'var';
    $var = 1;
    print $$a;
    выведет 1, не лучшая практика, но как элемент в какой-нибудь хитровложенной рекурсивной функции вполне помогает.
    А адресация точками или стрелочками это чистая вкусовщина на основе привычки, лично мне наоборот привычнее поставить стрелочку, а, для избежания длинной стоки, каждую стрелочку делать с новой строки вроде
    $object->getSubObject()
    ->getSubObjectProperty()
    ->getValue()
    Ну и стандарты с возможностью установить строгую типизацию тоже язык сильно улучшило
    Если раньше прокатывала конструкция вида
    public function do_something($input) {
    ...
    ...
    ...
    return true;
    }
    То сейчас такое на любом ревью завернут на переоформление в вид
    public function doSomething(string $input): bool {
    ...
    ...
    ...
    return true;
    }
    как результат, попытка передать что-то кроме строки, выдаст ошибку, как и возвращение чего-то кроме true/false

    • @80689248440
      @80689248440 ปีที่แล้ว

      : bool ну и шляпа - я понимаю что это комуто нужно и я рос в php с того века - а зачем???? приведи типизацию переменной если нужно. не помню чтоб у меня был баг - возможно я слишком медленно пишу)

  • @OneMusicStationForAll
    @OneMusicStationForAll ปีที่แล้ว +6

    В PHP8 динамическая типизация уже не очень динамическая, все гораздо строже. PHP начиная с 7 версии все больше движется к строгой типизации и думаю в версии 9/10 уже мало чем будет отличаться от того же Java

    • @awenn2015
      @awenn2015 ปีที่แล้ว +1

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

    • @OneMusicStationForAll
      @OneMusicStationForAll ปีที่แล้ว

      @@awenn2015 Добро пожловать в 2023 год. В PHP можно указывать типы переменных начиная с версии 7. То есть, уже лет 8 как

    • @ПавелВладимиров-и9л
      @ПавелВладимиров-и9л ปีที่แล้ว

      @@awenn2015 давно уже можно, с php 7
      public function (?int $a): ?string
      в аннотациях только тип массива,
      в php 8 и типы массивов можно пихать туда.

  • @andrejsv.312
    @andrejsv.312 ปีที่แล้ว +11

    Мы уже пару лет как перешли на строгую типизацию в компании. Думаю, что эта тема уже не актуальна в 2023 году.

    • @super0leg
      @super0leg ปีที่แล้ว

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

    • @kagestonedragon
      @kagestonedragon ปีที่แล้ว

      @@super0leg вообще не скоро (а может даже и никогда из-за особенностей внутренних реализаций), ибо нет возможности типизировать списки и прочие вещи, generic-и туда же, локальные переменные. Приходится пользоваться аннотациями + статический анализатор. Хоть и на текущий момент везде использую строгую типизацию, но не стоит забывать что это накладывает небольшой оверхед в рантайме, ибо нам в рантайме всегда приходится проверять корректность типов переменных.

  • @КириллТарасенко-ь4ъ
    @КириллТарасенко-ь4ъ ปีที่แล้ว +3

    Спасибо за видео про ПХП!

  • @syracuse4612
    @syracuse4612 ปีที่แล้ว +1

    Про энтерпрайз интересно. А стрелочки ван лав. Спасибо

  • @ОлександрПархоменко-г4й
    @ОлександрПархоменко-г4й 10 หลายเดือนก่อน +1

    4:47 очень странный совет, вы думаете что вы вообще говорите? Абсолютно с вами не согласен, вы продвигаете неправильные идеи. Я хочу и буду писать windows приложения и на php, и на JS и не буду это делать на C# потому что мне нужно сделать маленькое приложение здесь и сейчас, быстро его зарелизить чтобы сотрудники моей компании в течении недели могли открыть приложение, просто ткнуть пару кнопок и получить результат. На C# я буду писать приложение до китайской пасхи, а продажи происходят прям в текущую минуту.

  • @klub-t3x
    @klub-t3x 7 หลายเดือนก่อน +1

    Офигенный язык PHP на самом деле. Тем более после изучения JavaScript вообще прогулкой кажется

  • @evanhshumakov
    @evanhshumakov ปีที่แล้ว +6

    What is dead may never die! 🐘

  • @АлексейСажнев-н3ъ
    @АлексейСажнев-н3ъ ปีที่แล้ว

    Спасибо.Познавательно))

  • @beatrisia
    @beatrisia ปีที่แล้ว +1

    Теперь мне понятно, почему, когда я пыталась учить Руби в качестве первого языка, я не поняла ни фига (и бросила) и почему теперь, когда я изучаю PHP, мне все понятно и в кайф.:)

  • @Doublelone
    @Doublelone ปีที่แล้ว +1

    Большое спасибо за обзор языка и ваши видео!

  • @mockerpoker
    @mockerpoker ปีที่แล้ว +4

    отраслевой стандарт не Laravel, а скорее Symfony. Да и вообще вклад Symfony в PHP переоценить сложно.

    • @liravesnovaya242
      @liravesnovaya242 ปีที่แล้ว

      даже больше скажу: большая часть функционала laravel основана на symfony.

    • @GenaTolstij
      @GenaTolstij ปีที่แล้ว

      Они оба, по сути, отраслевые стандарты. Симфа в проектах посерьёзнее, ларка - где проще. Главные их конкуренты, zend и yii соответственно, немного упокоились с миром :(

  • @syracuse4612
    @syracuse4612 ปีที่แล้ว

    Есть ли обучение на проэкте ПХП??

  • @mmogamespace
    @mmogamespace ปีที่แล้ว +10

    меня в php удивило не столько -> , сколько объединение строк через точку

    • @postoronny
      @postoronny ปีที่แล้ว

      Кстати, C-подобная конструкция $a.='bla-bla-bla'; там тоже работает. И в JS тоже (с поправкой на синтаксис)
      Сам пользуюсь, но ни разу подобного в примерах не видел.

    • @adicthreex3530
      @adicthreex3530 ปีที่แล้ว +4

      Враховуючи початкову концепцію відсутності типізації воно має сенс, '1' . '1' = '11', '1' + '1' = '2', хоча я не впевнен, що воно так спрацює, но крапка як окремий оператор краще, коли ти не знаешь, якого типу в тебе змінні.

    • @mmogamespace
      @mmogamespace ปีที่แล้ว +1

      @@adicthreex3530кстати да. Я как-то об этом даже и не думал. Ps должно сработать именно так, как написали 👍

    • @woodzimierz9621
      @woodzimierz9621 ปีที่แล้ว +1

      @@postoronny треба просто уважно читати документацію по РНР, все там є.

    • @postoronny
      @postoronny ปีที่แล้ว

      ​@@woodzimierz9621 , да!
      Только это - не мой родной язык, я им пользуюсь изредка...

  • @valerie.i18n
    @valerie.i18n ปีที่แล้ว +2

    Коли ви говорили про фреймворки я дуже сподівалася що ви згадаєте Zend Framework
    А на нових версіях пхп можна писати використовуючи строгу типізацію :)
    Коли її почали завозити - мені пхп почав більше подобатися.

    • @woodzimierz9621
      @woodzimierz9621 ปีที่แล้ว +2

      Так він давно вже не Zend Framework, а Laminas. Я трохи використовував Zend 1.5, важкуватий, але мені він подобався, особливо робота з формами. У 2021 спробував АРІ Tools з Laminas скористатися, але, на жаль, не вийшло. На етапі встановлення вивалило купу несумісності пакунків, я подовбався з годину і кинув.

  • @TREVOGA
    @TREVOGA ปีที่แล้ว +3

    Почему пхп плохо, ответ профессионала: существует несколько часто упоминаемых фреймворков: Zend, Laravel, Symfony, Yii, CakePhp, CodeIgniter
    Ещё есть какие-то другие фреймворки, типа всякие ответвления от них. Есть легаси-фреймворки, самописы, есть Битрикс, который занимает долю рынка.
    И в каждой вакансии эти фреймворки упоминаются в рамдомном порядке. Это не считая разнящихся требований по всяким базам и кэшам. Это не считая каких-то «весомых» библиотек, типа JSON-API, SWAGGER и тп, которые по своим мануалам сопоставимы с мануалами по самим фреймворкам.
    Хоть подходы в фреймворках и совпадают, это не отменяет факта, что тебе в любом случае нужно будет помимо работы всегда держать под рукой открытую документацию, а задачи выходящие за рамки документации - это ещё та песня, когда ты лезешь в кишки этих решений и смотришь, как натянуть сову на глобус.
    В итоге работа по этому направлению сопряжена с постоянной мозгодрочью и нервяком, а компетенция не растет, ибо подобное распыление на всякие мелочи в итоге не даёт никакого весомого профита в проф плане.

    • @baldislavep00pczynski68
      @baldislavep00pczynski68 11 หลายเดือนก่อน

      А какое направление вы бы тогда посоветовали

    • @TREVOGA
      @TREVOGA 11 หลายเดือนก่อน +2

      @@baldislavep00pczynski68 в пхп точно не лезть. Дерьмовый стек, а на собеседовании на тебя смотрят на говно даже с 10+ годами опыта. Я бы вообще посоветовал в программирование не лезть вообще. Неоправданно раскрученная херня инфоцыганства про чудесные истории успеха.

    • @mailwood1388
      @mailwood1388 6 หลายเดือนก่อน

      @@baldislavep00pczynski68 1C нормальная разработка, потому что все понятно и удобная отладка.

    • @ДионисийП-н7х
      @ДионисийП-н7х 3 หลายเดือนก่อน

      пишите код для себя, для души, на выбранном одном фреймворке - и не надо будет париться со всякими легаси, чужими самописами и прочей радномной ерундой ))

    • @mailwood1388
      @mailwood1388 3 หลายเดือนก่อน

      @@TREVOGA Полностью согласен, что программирование сегодня тема не для денег. Работа руками или ногами приносит денег зачастую не меньше, думает сегодня ИИ. Если только для себя, вордпресс поковырять то пыха незаменима.

  • @ара_вася
    @ара_вася ปีที่แล้ว

    Объясни плиз как ты заюзаешь Websocket Secure WSS на PHP?
    это была моя основная причины выброса в мусорку пхп, что я не нашел ответа на этот вопрос быстро и легко

    • @jaloliddinhaqnazarov
      @jaloliddinhaqnazarov ปีที่แล้ว

      Зачем не нашёл

    • @ара_вася
      @ара_вася ปีที่แล้ว

      @@jaloliddinhaqnazarov ты прикалываешься? что значит зачем вебсокет?

    • @jaloliddinhaqnazarov
      @jaloliddinhaqnazarov ปีที่แล้ว

      @@ара_вася я не сказал зачем вебсокеты , спросил ты нашёл или нет решения как исползoват вебсокеты на PHP

  • @dimdimich2356
    @dimdimich2356 ปีที่แล้ว +4

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

    • @deniskhakimov
      @deniskhakimov ปีที่แล้ว

      Угу. Правда не стоит забывать, что если в PHP не хватает скорости или функционала, то всегда можно написать своё расширение на C++ :)
      Много лет назад тестировал эту фичу и остался доволен. Та же многопоточность вроде бы доступна через расширение 🤔

    • @alvcode3764
      @alvcode3764 ปีที่แล้ว

      Проблема дженериков частично решается через DocBlock

  • @NishkePaz
    @NishkePaz ปีที่แล้ว +11

    Спасибо, Немчинский. Благодаря тебе, у меня восстановился интерес к программированию, потому что в школе он был, но такой себе(из-за российского обучения), а сейчас он начинает восстанавливается. Объяснение хорошее, бех лишней воды. То, что нужно, чтобы заинтересовать людей.

    • @NishkePaz
      @NishkePaz ปีที่แล้ว

      без*

    • @nikitaermolenko7813
      @nikitaermolenko7813 ปีที่แล้ว +1

      Да ладно, если ты ща начнешь учиться этому то выучишься через год-два но норм джуна и короче поймешь что рынок перегрет...

    • @NeverBrokeAgainx
      @NeverBrokeAgainx ปีที่แล้ว +3

      при чем тут российское обучение если ты вместо того что бы учиться смотришь это бесполезное видео

    • @mrAndreaModa
      @mrAndreaModa ปีที่แล้ว

      @@NeverBrokeAgainx бесполезное для нас, а серёжа бабки получает)

  • @alexgritsenko9451
    @alexgritsenko9451 ปีที่แล้ว +4

    Когда Бог писал код Вселенной, то сделал это на Java. И увидел Он, что это хорошо.
    Потом заметил скучающего, одинокого Адама и написал код для Евы на Perl-e. И ужаснулся Адам и с проклятиями убежал вглубь Эдемского сада, где написал на PHP pornhub.
    Нет уже ни Адама, ни Евы, а порнхаб есть. PHP - write once, run forever.

  • @luka-xx5po
    @luka-xx5po ปีที่แล้ว

    какое различие между php и sql? типо они же для дата баз не?

    • @andriivoronin3816
      @andriivoronin3816 ปีที่แล้ว +1

      пыха- язык бэка (связывает бд и фронт), скул- язык баз данных.

  • @evgeny_5891
    @evgeny_5891 ปีที่แล้ว +1

    Пишу на symfony, в восторге от фреймворка и его инструментов! А если еще умешь в golang то получается ядреная штука)!

    • @igoraleksandrovich1498
      @igoraleksandrovich1498 ปีที่แล้ว

      Что общего у Symfony и Go? Go это что-то новое от гугла, про которое со временем забудут. Зачем на него вообще время тратить?

    • @evgeny_5891
      @evgeny_5891 ปีที่แล้ว

      @@igoraleksandrovich1498 я разве написал что у них есть что то общее (постановка вопроса даже весьма странная, один фреймворк дргой просто язык)? Я про то, что одно может дополнить другое если требуется решить проблему н-р "бутылочного горлышка" в контексте производительности

  • @heograf
    @heograf ปีที่แล้ว

    Вы не упоминали Yii. Или Yii это специализированный фреймворк?

    • @woodzimierz9621
      @woodzimierz9621 ปีที่แล้ว

      це ну дуже застарілий фреймворк

    • @GenaTolstij
      @GenaTolstij ปีที่แล้ว

      Yii, к несчастью, был побежден и вытеснен ларавелем (прямой конкурент). У yii1 было одно существенное преимущество, с которым он лет 15 назад рвал всех - он был архибыстрым, быстрее всех других фреймворков, а значит мог или обслуживать больше клиентов на том же железе, или столько же клиентов, сколько та же симфа, но на железяке в 2 раза дешевле. Выигрывал он за счёт оптимизации автолоада, но потом пришел composer и это все стало неактуально. Ну а дальше вопрос комюнити, кому оно надо и т.д. По сути yii хоть и имеет американо-китайские корни, сейчас этот фреймворк жив разве что в СНГ. И то так себе жив - тройку так и не осилили.

    • @woodzimierz9621
      @woodzimierz9621 ปีที่แล้ว

      @@GenaTolstij в Yii зовсім інша ідеологія ніж у сучасних РНР фреймворках.

    • @GenaTolstij
      @GenaTolstij ปีที่แล้ว

      @@woodzimierz9621 , смотря о какой версии мы говорим. В первой - да, но она делалась ещё в докомпозеровскую эпоху, а вот вторую построили куда ближе к современности. А тройку строят типа вообще современно, но что-то ее уже лет 7 пишут-пишут...

    • @woodzimierz9621
      @woodzimierz9621 ปีที่แล้ว

      @@GenaTolstij до чого тут перша, я про другу кажу.

  • @АндрійФедоров-ж8ь
    @АндрійФедоров-ж8ь ปีที่แล้ว

    Доброго времени суток, друзья. У меня есть вопросик по поводу конспектирования материала. Какой примерно процент информации записывать. И все в этом роде только идентично с английским, заранее спасибо!!!!

  • @LeoMrakobes
    @LeoMrakobes ปีที่แล้ว

    @SergeyNemchinsiy Щодо Пайтона, нещодавно я пройшов невеличкий курс з пайтона, після 10 років програмування на PHP - я сидів і хапався за голову кожен раз коли треба граится відступами, коли нужно імпортувати купу бібліотек кожен раз коли тобі вони потрібні, коли бачив що всередині класу можна легко використати змінну яку визначили в клієнтському коді і ніяк не передавали всередину, коли "інкапсуляція" працює тільки для IDE, а за бажанням можна просто отримати доступ до чого завгодно всередині класу, коли немає нормальних ітераторів, а для того щоб зробити зручну ітерацію по даним треба попередньо "погратися" а щє дуже незручно коли область видимості функції об класу пересікається з областю видимості клієнтського коду через що можуть бути проблеми із однаковими іменами змінних !!!! ... Я згоден що з пайтоном можна в машин-лернінг, або у якийсь аналіз даних, але бляха-муха... після такого пафосного "Пайтон - супер-пупер мова програмування за допомогою якої можна робити шо завгодно, а щє закиди по типу принт можна зробити за один рядок коду, або переприсвоїти змінні одна одній теж за одну операцію" після занурення в пайтон в мене склалося стійке враження що мені на PHP багато чого робиться і працює набагато зручніше і пишеться коротше та швидше... Не знаю може я щє недостатньо занурився в бібліотеки та фреймворки, але на даному етапі я відчуваю що тупо втратив час та міг би вивчити за ці два місяці щось більш корисне.
    І як було приємно повернутися до фігурних дужок і крапки з комою і змінних із доларом :D

  • @ДмитрийОхрименко-у1ч
    @ДмитрийОхрименко-у1ч ปีที่แล้ว

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

    • @SergeyNemchinskiy
      @SergeyNemchinskiy  ปีที่แล้ว

      зависит от вас :)

    • @Dzystas
      @Dzystas 7 หลายเดือนก่อน

      вообще-то до 2х лет общепринято считьать. Но есть джуны и с 5и летним стажем

  • @alexandrf2428
    @alexandrf2428 ปีที่แล้ว +3

    А вот такой вопрос 😃 Сергей в трасляциях при ответе на вопрос о зарплатах програмистов на разных языках отвечал что плюс минус одинаково. То есть если я правильно понимаю то JS и PHP программист будут зарабатывать схожие суммы?

    • @vladislavkomkov5178
      @vladislavkomkov5178 9 หลายเดือนก่อน

      Это странно, т.к. js и php идут рука об руку. Аналога js для динамики на сайте не существует. А php это серверный язык. Если ты про ноду, то пхп чувствует себя попроще т.к. не такая конкуренция и работы больше на пх.

  • @andreasshev5748
    @andreasshev5748 ปีที่แล้ว

    Интересная информация спасибо!

  • @СергейБажанов-в5в
    @СергейБажанов-в5в 5 หลายเดือนก่อน

    Хотелось услышать мнение про Lazarus, его конкурентов и тп.

  • @AkaiJedi
    @AkaiJedi ปีที่แล้ว

    Всякий раз, когда узнаю о вас что-то новое, все больше восхищаюсь! Спасибо за ролик.

    • @alexandrapersukova
      @alexandrapersukova ปีที่แล้ว

      Спасибо вам! )

    • @ГардамиранСвами
      @ГардамиранСвами ปีที่แล้ว

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

    • @woodzimierz9621
      @woodzimierz9621 ปีที่แล้ว +1

      @@ГардамиранСвами от у тебе спитати він забув. А те що тобі і тобі подібним припікає якраз і є ознакою того, що Сергій робить все вірно.

  • @adicthreex3530
    @adicthreex3530 ปีที่แล้ว +2

    Що особисто мені не подобається у ПХП:
    - Погана можливість підставляти щось у строки. Можно підставити лише змінну: "bla bla {$this->foo}". Тут у JS/TS набагато краще: `bla bla bla ${any_expression}`. Можно підставляти константи, вирази тощо.
    - Нема дженериків. Були б хоча б типовані масиви. Є лише костиль PHPDoc, но то таке, ти описав, массив ЧОГО функція має отримати, написав док, а потім змінив код, а ДОК змінити забув.
    - Погане оголошення локальних змінних. Причому властивості класів можно оголосити нормально з типом. Ну так. це не є проблема, бо в нас функції до 100 строк, можно пойняти, але ні, це погано. Дайте мені ключеве слово для оголошення локальної змінної, дайте мені вказати її тип.

    • @GenaTolstij
      @GenaTolstij ปีที่แล้ว

      - "text" . (Any expression) . "Text"; Хотя лучше через sprintf в этом случае завернуть.
      - отучиться передавать в функции массивы и юзать коллекции и dto.
      - при объявлении переменной просто присвоить ей то, что в ней должно быть. Всё. Если вдруг в процессе переменная из массива станет строкой - Иде ругнет. Но вообще да, в простых переменных строгую типизацию можно бы и завезти.

    • @adicthreex3530
      @adicthreex3530 ปีที่แล้ว

      ​@@GenaTolstij
      - "text" . (Any expression) . "text" - ну зрозуміло, але треба слідкувати, якими лапками ті відкрив строку, наприклад якщо раніше використовувалась підстановка змінної, я маю на указі "bla bla {$foo} bla " . (MyClass::CONST) . ' bla bla'. Й не так зручно контролювати пробіли перед або після виразу. Це просто відсутність приємного цукру.
      - це фактично відмовитись від масивів. Навіть якщо забути про швидкодію, ну щоб передати масив строк городити якусь сутність ну таке собі.
      - й типізацію й оголошення:
      $foo = 1;
      // ...
      $foo = 2;
      // ...
      func($foo);
      Планую передати 1, бо насправді код мав бути таким:
      let foo: number = 1;
      // ...
      let foo: number = 2; // помилка одразу
      //
      func(foo);

    • @GenaTolstij
      @GenaTolstij ปีที่แล้ว

      ​@@adicthreex3530 , смотри
      - По поводу кавычек :) У меня это уже до автоматизма доведено :) Я двойные в коде не использую никогда. Хотя, справедливости ради, "bla bla bla $foo blablabla" подставит значение переменной, а вот 'bla bla bla $foo blablabla' выведет строку в неизменном виде. В ПХП одинарные, двойные кавычки это разные кавычки. Но лично я предпочитаю конкатинацию, как просто универсальное решение, иногда sprintf, но его люблю, честно, меньше.
      - в пхп нет всех этих let, var, const и прочей ерунды и, как по мне, это очень правильно. зачем? переменная сетапится первым же присвоением в неё значения, если ты обратился к несуществующей переменной - получаешь notice. И не надо следить инициализирована переменная, или нет, перед присвоением ей значения. Тупо проще ИМХО. А вот если переменная в процессе работы поменяет свой тип - ИДЕшка, насколько помню, это подсветить должна и ругнуть. Но ели уж так хочешь указать строго тип:
      $i = (int)1; или $a = (string)'Ababa'; Пожалуйста. Это же можно делать при передаче переменной в функцию, то есть func((string)$a) и у тебя всегда приведёт к нужному типу, конечно если то, что во входящей переменной, так умеет.
      И опять же, пых это тебе не JS, когда 1+'1' может быть 2, а может быть 11 (я там не помню при каких условиях оно клеит, а при каких суммирует), в пыхе для конката используется точка, для сложения - плюс, всё, и никакой путаницы.

    • @adicthreex3530
      @adicthreex3530 ปีที่แล้ว

      @@GenaTolstij const є. У більшості мов, у тому числі "дорослих", на яких пишуть щось велике є окрема інструкція оголошення змінної, та інструкція оголошення з можливим присвоюванням відрізняється від інструкції присвоювання. У PHP це одна інструкція й це погано. Наприклад:
      $counter = 9;
      for ($counter = 1; $counter < 4; $counter ++) {}
      var_dump($counter );
      Ми у першій строчці оголосили змінну, а у другій у першому виразі циклу for, де "$counter = 1" - це ми намагаємося ввести нову змінну або присвоїти щось у стару? А що буде передано у var_dump? Просто якщо була б явна інструкція того, що ми у циклі оголошуємо змінну - ми б отримали миттєву помилку у час написання (теоретично, бо в мові може бути затемнення). Ну й VSCode нічого не каже про "$a = 0; $a = true;" бо це легальний синтаксіс.

  • @a.i.k_666
    @a.i.k_666 ปีที่แล้ว

    Lara как же ?

  • @victorkochkarev2576
    @victorkochkarev2576 ปีที่แล้ว +2

    PHP со временем становится очень похожим на Java. К сожалению на PHP сейчас пишутся не только сайты, но и целые Enterprise системы, но вот непонятно зачем.

    • @ei2292
      @ei2292 ปีที่แล้ว

      Подскажи, для новичка (абсолютного) в программировании лучше на php остановится или на с#?

    • @victorkochkarev2576
      @victorkochkarev2576 ปีที่แล้ว

      @@ei2292 хороший вопрос, если у вас цель заниматься исключительно вебом то можно остановится на PHP, и ознакомится с такими фреймворка и как Symfony или Laravel. Если вы хотите именно освоить программирование в более широком смысле C# будет лучше. Хотя для начала может быть есть смысл посмотреть на Python. Какие у вас цели? Какого типа задачи вы бы хотели бы решать?

  • @DmytroSichkarOnline
    @DmytroSichkarOnline ปีที่แล้ว

    I am not ambidextrous. I do not enjoy static typing, and objects animate my mind's eye. But I have come to appreciate the fact that others illuminate their creativity with just as much intensity as I do mine, using functional programming constraints and explicitly spelled out types.
    As long as I never have to soil my Ruby with type hints or write all front-end code in TypeScript, I can so happily coexist with those who adore Go or can't stand JavaScript. Vive la différence!

  • @DarthMalok
    @DarthMalok ปีที่แล้ว +1

    Стрелочки вместо точек появились, потому что точки были уже заняты в конкатенации строк. На заре язык был настолько прост, что ООП в нём даже не планировалось.

    • @32zim32
      @32zim32 ปีที่แล้ว

      Многие обсирают пхп не понимая его историю и почему сделано так а не иначе

  • @denizsincar29
    @denizsincar29 ปีที่แล้ว

    ну на python-е не только веб фреймворки. я вроде где-то слышал, что python можно подключить к вебу и использовать print для вывода на вебсайт прям как echo в Пхп. но может и ошибаюсь.

    • @woodzimierz9621
      @woodzimierz9621 ปีที่แล้ว

      Можна і не тільки на пайтоні, але те як ти написав, то повна маячня.

    • @denizsincar29
      @denizsincar29 ปีที่แล้ว

      @@woodzimierz9621не очень понял. ну ладно.

  • @ДенисЕлисеев-н7ц
    @ДенисЕлисеев-н7ц ปีที่แล้ว +3

    Как разработчик PHP с 3-ех летним стажем скажу что PHP отлично подходит для e-commerce, но почему то всегда суют в interprise (банки, Авито и т.д.). Все бы ничего php отлично работает, кучу библиотек и можно смириться с отсутствием женериков и строгой типизации, ну или нет down и up кастов. Но что меня больше всего раздражает, это синхронщина. Это отлично работает, пока дело не дойдет до вебсокетов или задач в крон. В целом крон на laravel к примеру это кажется отдельный поток с do while , но на мой взгляд на яве асинхронщина сделана удобнее и понятнее. В целом если честно немного пожалел что начал свою карьеру с php а не с java, потому что с php тяжело уйти по причине того, что ЗП на php вроде бы как поменьше, но не настолько меньше чтобы учить java/c# и потом мучиться с синтаксисом, контролем переменных и структурами данных (в яве для объектов есть коллекци или hasMap ) в php массив по сути это HashMap как в яве и работает он одинаково стабильно и быстро что на числах, что на строках, что на объектах... Нет деревьев, но ни разу не видел чтобы хоть кто-то делал дерево в яве ... В общем , для старта топ язык так скажем. А еще плюс в том, что без работы Вы точно не останетесь

    • @cranebird1467
      @cranebird1467 ปีที่แล้ว

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

    • @GenaTolstij
      @GenaTolstij ปีที่แล้ว +1

      А для каких задач нужен такой асинхрон, с которым не справится очередь в месенжере? Это не троллинг, реально интересно. Например у меня типичная задача "зарядить 50 писем на отправку", так я их просто пихаю в очередь, пользователю отдаю ответ "письма поставлены на отправку" и забыл о проблеме. Дальше уже крон или что другое как раз асинхронно эту задачу выполняет. А для чего ещё надо?

    • @cranebird1467
      @cranebird1467 ปีที่แล้ว +1

      @@GenaTolstijмне кажется,что люди часто путают многозадачность во фронте где при загрузке страницы асинхрон ускоряет загрузку и в бекенде где многозадачность это просто очередь)

    • @ДенисЕлисеев-н7ц
      @ДенисЕлисеев-н7ц ปีที่แล้ว

      @@GenaTolstij , да в целом то да и редис справится. Просто нужно понимать что это не наливное решение языка, а доп прослойка.

    • @ДенисЕлисеев-н7ц
      @ДенисЕлисеев-н7ц ปีที่แล้ว

      @@cranebird1467 да, забыл про перегрузку =) но перегрузка контроллеров это такое себе как мне кажется, слышал что это плохая практика

  • @mylifeison4875
    @mylifeison4875 ปีที่แล้ว

    8:37 забыли?

    • @alexandrapersukova
      @alexandrapersukova ปีที่แล้ว

      не срабатывает :( th-cam.com/video/w6kdepP5P6k/w-d-xo.html

  • @МихаилКрамер-н7ш
    @МихаилКрамер-н7ш ปีที่แล้ว +3

    Ну типизации достаточно завезли в последних версиях PHP. Параметры, поля классов, результаты функции уже можно типизировать (а можно и не типизировать). Может и завезут в 9-ку типизацию переменных

    • @ИмяФамилия-ш2г9ь
      @ИмяФамилия-ш2г9ь ปีที่แล้ว +1

      сегодня умножал строку на целое и получил тайп эррор))

    • @awenn2015
      @awenn2015 ปีที่แล้ว

      Да, поскорей бы, но думаю это будет сложно реализовать под капотом

  • @sergeypekar1058
    @sergeypekar1058 ปีที่แล้ว +1

    13:50 практически мои эмоции когда с Unity пересел на Unreal

  • @aurinis091
    @aurinis091 ปีที่แล้ว

    Стоит ли идти в битрикс, чтобы получить первую работу и потом доучивать нормальные фреймворки - laravel/symphony/yii2 или лучше сразу учить фреймворки?

    • @onnivia2554
      @onnivia2554 ปีที่แล้ว +1

      Ясен хрясен сразу фреймворки. Ты на битрикс времени затратиш не меньше.

  • @vetenskap1573
    @vetenskap1573 ปีที่แล้ว +1

    Синтаксис PHP как по мне прекрасен. Единственное печалит это то, что из коробки нет мультипоточности, да и в целом PHP намного медленнее того же GO, а так всё збс

  • @SergMirny_yt
    @SergMirny_yt ปีที่แล้ว +6

    Когда-то писали на Perl, потом PHP, сейчас Python - стилистика python с пробелами и табуляциями - на мой взгляд самая удобная, без лишнего. Но это вопрос вкусовщины.
    Что хорошего в php - это, как было сказано - можно писать сразу сайт на голом php, на пайтоне нужен минимум какой нибудь flask.
    Сильная сторона Пайтона - я вот десктоп приложение (с окошками) для Линукс пишу и сопровождаю уже много лет и он отлично справляется (pyqt)

  • @ГлебЛукашонок-ф7ф
    @ГлебЛукашонок-ф7ф ปีที่แล้ว +3

    Сергей, спасибо большое за ваш труд. Вы в этом видео сравнивали php с python/ruby, но почему не сказали про nodejs?

    • @TwELvE848
      @TwELvE848 ปีที่แล้ว +5

      потому что node js давно не поддерживают в том же темпе как php, python и ruby. Он уже перестал соответствовать новым реалиям рынка вэб-разработки, да на нём можно всё ещё написать годный проект, но зачем? если у конкурентов разработка такого же проекта оказывается быстрее, удобней и без костылей как в node.js. Раньше node держался из-за многопоточности, сейчас же когда php получил свои инструменты для многопоточности, node.js уже выглядит как пережиток прошлого.

    • @ГеоргійКоваленко-у8ф
      @ГеоргійКоваленко-у8ф ปีที่แล้ว +1

      @@TwELvE848Почему Node.js не соответствует новым реалиям разработки ? Для задач ввода/вывод очень даже хорошо подходит, есть вполне неплохие фреймворки тот же Nest (у нас он на проекте, код читается как книжка). Может в многопоточку с помощью Worker Threads

    • @KobaltMetal
      @KobaltMetal ปีที่แล้ว

      ​@@ГеоргійКоваленко-у8ф тут дело скорее именно в скорости разработки. С nodejs - все хорошо, но код еще быстрее можно написать на php/phyton/ruby, что для бизнеса - очень кретично и не всегда встает вопрос об эффективном и быстром исполнении кода как в nodejs, тк не каждый бизнес еще дорастает до таких нагрузок, а вот реально быстро выкатить мвп и затаскивать фичи - бизнесу оч надо здесь и сейчас

    • @ГеоргійКоваленко-у8ф
      @ГеоргійКоваленко-у8ф ปีที่แล้ว +1

      @@KobaltMetal Хм… А разве на Node.js (оно же JavaScript) так долго и сложно разрабатывать ? Язык с динамической типизацией, синтаксис С подобный, интерпритируемый, я б не сказал, что он прям сложный, но сравнивать с PHP, Python, Ruby я конечно не могу ибо опыта у меня с ними не было

    • @ИмяФамилия-ш2г9ь
      @ИмяФамилия-ш2г9ь ปีที่แล้ว

      @@TwELvE848 из-за какой многопоточности? его фишка это асинхронность

  • @aleksandralekseev9167
    @aleksandralekseev9167 8 หลายเดือนก่อน

    Делал перенос приложения с asp + vba на php. Отлично подошел для сравнимо простой конвертации. проект занял 2 месяца.

  • @alexanderberman9629
    @alexanderberman9629 ปีที่แล้ว

    Так в ANSI C тоже стрелочки если не ошибаюсь?

  • @azizxonzufarov7787
    @azizxonzufarov7787 ปีที่แล้ว +1

    Symfony сводит все хейты на нет.
    Так как там реальный ООП, разделение на слоев, репозитории, сервисы всё в нём есть.

    • @32zim32
      @32zim32 ปีที่แล้ว

      Там даже есть больше чем в хваленом Спринге

  • @unicoxr5tj417
    @unicoxr5tj417 ปีที่แล้ว +3

    PHP 5.6-вот был простой язык.)
    В 8 версии это уже не изи-язык.
    Мне нравится как раз максимальная понятность языка.

    • @80689248440
      @80689248440 ปีที่แล้ว +2

      ага на 56 такого навидался)) а что с 8 не так? я както и не понял разницы - как обычно чтото убрали/добавили - не 7й же - хуже точно не стало))

    • @unicoxr5tj417
      @unicoxr5tj417 ปีที่แล้ว

      @@80689248440 дэк, бро) чего там навидываться, если тот язык был для примитивных веб-сайтов и Вордпресса)
      Золотые времена) Самый понятный код, ну или я к шарпам привык, хз

    • @igoraleksandrovich1498
      @igoraleksandrovich1498 ปีที่แล้ว +1

      Наоборот PHP 8 избавился от лишнего мусора.

    • @GenaTolstij
      @GenaTolstij ปีที่แล้ว +1

      А типа на 8 нельзя писать так же как на 5.6 :) Если очень захотеть, то на нем и как на 4 можно писать за редким исключением (либа мускула стала другой)

    • @80689248440
      @80689248440 ปีที่แล้ว

      @@unicoxr5tj417 да делфисты код писали и свалили))))

  • @druid8301
    @druid8301 ปีที่แล้ว +2

    знаки $ показують новачкам, що можно знайти роботу

  • @Unknownuser-gz4uq
    @Unknownuser-gz4uq ปีที่แล้ว

    у меня другой вопрос к знатокам. на сколько актуальны сейчас perl и ruby и где они применяются? на изучение выбрал для себя java как наиболее актуальный и универсальный язык. на первый взгляд пока. не сказал бы что его учить сложно, наоборот. но из минусов отметил его вариативность во благо сокращения кода. например a=a+1 то же самое что a++. это вынуждает запоминать ещё что-то, хотя бы ради того что придётся читать чужой код. ну и есть другие примеры. претензии пока только к этому. по моим наблюдениям ещё не в тему. си шарп очень похож на джава, что в плюс, если хотим писать нативно под винду. наверняка есть специальные трансляторы, которые переводят код из джава в си в решётку или наоборот. виндой я не пользуюсь, но. расстроил монструозный синтаксис языка shell, который используется по умолчанию в линукс. для командной строки я бы предочёл интерпретатор на другом языке. опять таки. это дело вкуса. можно привыкнуть к синтаксису

  • @eugener1931
    @eugener1931 ปีที่แล้ว +2

    По мне лендинг и пару страниц - это все же статика + редактор :-) Ну а типизацию можно задавать, с 7 вроде :-)

  • @mexvision-3556
    @mexvision-3556 ปีที่แล้ว +1

    Ох уж эти доллары=) Многие думают что доллары и стрелочки это что-то страшное, но я вас уверяю, несколько недель практики и вы их вообще перестанете замечать) Но вот читать другой язык, например яву, станет чуть сложнее) Так как $/this/static/self и т.п. помогают ориентироваться в коде быстрее. Также многие говорят о типизации, но уже давно можно обезопасить себя хинтами. Да, в PHP не хватает определенных структур данных, по типу коллекций и т.п. с коробки, это не удобно. Так как подобные штуки приходится писать самому. Но в контексте PHP, это как правило делается очень редко и для этого существуют сторонние библиотеки, интерфейсы от разработчика языка и т.п.

  • @ValkRover
    @ValkRover ปีที่แล้ว

    RUBY? А как насчет APL по читабельности?
    Кстати, такому почитатателю Python, почемы бы не просветить народ о Majo?
    Java, я же на эту цацку-песку от Sun Microsystem даже сертификат имею, экзамен сдал хотя нихрена никогда не работал. Но, индульгенция крутая, HR уважали всегда. Там такая бумага для вставляние в рамочку на стенке, со всеми ободками. :)

  • @kookaburru
    @kookaburru ปีที่แล้ว

    Стрелка это странно для С-подобного синтаксиса? Автор ролика видимо не знаком с Си. Именно стрелка это и есть С-подобный синтаксис доступа к данным, методам объекта через указатель. А указатель в Си это основной элемент программирования на Си :)

  • @denizsincar29
    @denizsincar29 ปีที่แล้ว

    конструкторы сайтов я никогда не понимал. нужна маленькая страничка? за 5 мин на html css, js, php. нужна большая страница? тут конструктор не поможет. опять же выше упомянутые языки.

    • @woodzimierz9621
      @woodzimierz9621 ปีที่แล้ว

      Конструктори не для розробників, а для нон текнікал юзерс.

  • @dietrichsteinwald1433
    @dietrichsteinwald1433 ปีที่แล้ว

    Спасибо за видео.

    • @alexandrapersukova
      @alexandrapersukova ปีที่แล้ว

      Пожалуйста) Какие еще темы вам интересны?

  • @vadimkun8793
    @vadimkun8793 4 หลายเดือนก่อน

    Ruby? Кто-то еще его использует в новых проектах? И зачем, если «да»?
    Смысла в PHP особо нет, его успешно вытесняют или уже вытеснили Node JS и Python. А для масштабных проектов используется Java

  • @ACE46
    @ACE46 ปีที่แล้ว

    11:49 Боюсь нарваться на холивар, НО в кампуктере "символ и пробел" это как "мягкое и тёплое", если уж сильно охота то можете сказать что
    в питоне прозрачный символ, а в остальных непрозрачный символ...
    Не очень то уж гениально заменить один символ другим и назвать это ДРУГИМ языком программирования...