Почему я считаю, что JavaScript плохой язык?

แชร์
ฝัง
  • เผยแพร่เมื่อ 13 ม.ค. 2025

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

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

    На лицо разжигание программистской религиозной розни))))

  • @РезниченкоРостислав
    @РезниченкоРостислав 5 ปีที่แล้ว +462

    Хмммм ну такое себе мнение, как для человека с опытом и вроде бы компетентного специалиста. Можно как то глубже в тему уйти, привести примеры, а то однобоко как то получается. У вас язык годен для спинеров. А люди на нем уже видеопотоки передают, код для микроконтроллеров пишут и запускают на любой табуретке... ну как Джава стремилась такой стать, но чет не срослось. Язык на самом деле плохой и это признают сами джаваскриптеры. Но у вас это высказывание "фэ" а не мнения.
    "легко потерять ошибку" - почему? Как то голословно звучит, у нас есть системы типизации( не обязательно Dart, TS) есть контрактное програмирование которое позволяет повысить надежность того как твой код работает. В Джс я бы сказал один из разнообразнейших и сильнейших тулингов. Поэтому дебажить код и находить ошибку легче. На самом деле легко потерять ошибку в вашем случае, это относится к любому динамическому языку. Потому что нужно держать типы переменных в голове.
    вы можете как угодно относится к node.js. Ваше право. Но увы большие компании говорят об обратном, есть бекенд на джс и сервисов довольно много. А если учесть что время монолитов, не то что бы ушло, но подходы разные появились. То скорость разработки node.js микросервиса увы, но выше чем на джава и если это не performance first вешь, то можно и на ноде, на го, на чем угодно.
    Если вы уже делаете выпады в сторону других языков, то пожалуйста, при упоминании исторических вещей, удосужтесь хотя бы почитать как все было. Джаваскрипт ( ECMASript) всегда был в целом то один. Да написан на коленке, да все не так легко было. но а) не версии были разные про разные, а реализации движка. Дайте угадаю, в GraalVM и в движке Oracle для джавы, тоже есть разницы того какой байткод они выдают не так ли? хммммм. б) язык развивался стабильно и постепенно он рос и у меня складывается ощущения что у вас осталось мнение о нем еще с 2007 года. Когда все писали на джиквери...
    Эффекты ездящие по экрану. Это можно уже и без джс писать на чистом css.
    Красиво хорошо и здорово, это вопросы архитектуры и того как вы строете приложение. На Джаве тоже такого наворотить можно что волосы дыбом станут. Красиво хорошо и здорово это идеализированые принципы которые многие могут не соблюсти. И они не относятся к языку.
    "Это не язык широкого применения" - хмммммммммммм вы общаетесь в слаке ? используете скайп? дискорд? для джс vscode ? JIra ? это все запускается у вас на мобильном? Да можно долго рассказывать о том как это не производительно и тд. НО это все джс. Увы и ах, джс сейчас везде. И его не убрать, даже если джаву компилировать в джс( что как бы уже делается) закон дырявых абстракций сложно обойти. Вам все равно потом прийдется копаться в джс...есть библиотеки для написания кода под микроконтроллеры и много чего еще. Что для вас широкое применение?
    "не ооп язык" - а что такое ООП язык? говорят был первым Smalltalk, так он был совершенно не про то что сейчас современное ООП. "вы не можете создавать классы"...можем. Только если касатся ООП и обьектов. Классы, интерфейсы и прочее это не обьекты. Это просто абстракции. Опять же. Мы можем создавать обьекты. И прототипы вполне себе укладываются в идеологию ООП. Вы говорите что он использует другие обьекты... но он не ооп.
    "Понимание функциональности ограничено" - хмммм у вас? ))). Есть Ramda и еще пачка функциональных библиотек, есть много вещей которые позволяют писать функционально. Но оно по большому счету нужно не такому большому количеству людей. Поэтому многие просто используют "фишки" функциональшины что бы повысить читаемость кода, компактность, декларативность кода. А еще есть реактивное программирование...ух... наверно там тоже понимание как то ограничено, да ? ребята из RxJs поржали бы.
    Про Jquery, только вот беда, что бы эффективно его писать и он был похож на джс, нужно учить джс, чего многие в то время когда он был популярен не делали, поэтому и возникает "не похож на джс", а как он может быть похож если они не знали как он должен выглядеть? А вообще аргуммент слабоват. Можно было бы попытатся разобрать что то из современного. Там реакт...ай сложно реакт ведь он на принципах джса... ну там ангуляр, а ну да там же ангуляр с тс и там есть и типы и архетектура из коробки и тулинг и все по взрослому...ну может вью? ну там есть к чему придратся да. Но тоже ой что бы понимать как оно работает нужен джс. Но да многие из перечисленных вещей меняют синтаксис js/html и да к этому нужно привыкать, да это плохо, только лишь от части. Но если вспомнить любые шаблонизаторы, они тоже меняют немного синтаксисы. Так что не страшно. В этом вопросе выпад в джс тоже слабоват
    Любой язык можно фреймворком изменить до полной не узнаваемости, просто где то это нужно, а где то нет. Вы можете написать на джаве свой язык, который будет компилится в джаву, а потом в байткод. По сути это будет абстракцией над языком и так же изменит его до неузнаваемости.... если посмотреть на laravel php там все тоже крайне похоже на...джаву и то как готовят её на беке в интерпрайзе и че? кто то умер? нет, хороший фрейм.
    JS спорный язык во многом, ваше право его не любить. Но если вы работаете с аудиторией, продвигаете курсы, то толку с видяшки в 4 минуты, с высказывание поверхносного "фэ". Помоему логичней было разобрать "покосточкам" вы же программист, ну заройтесь в тему, на ютубе глубины в некоторых вопросах не хватает.

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

      Это самый большой комментарий, который я видел в жизни. Со всем согласен, просто лень писать было )))

    • @undefined-is-not-a-function
      @undefined-is-not-a-function 5 ปีที่แล้ว +49

      Автор видео явно не сечет в JS, чего может стоить его мнение? Scala ему не нравится, js - тоже. Только говнокод на Java радует глаз.

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

      Крутой комментарий. Со всеми согласен + в ES7 есть много классных фишок да и классы прокачали

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

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

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

      Спасибо за комментарий, были интересно. Давно я таких длинных комментариев не читал)

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

    «Есть всего два типа языков программирования: те, на которые люди всё время ругаются, и те, которые никто не использует.»
    Bjarne Stroustrup.

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

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

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

      @@Mike19910711 нет в JS есть гибкость которой нету у C# или java, только она не везде нужна и её надо умело использовать.

    • @СергейКондратенко-о9ц
      @СергейКондратенко-о9ц 5 ปีที่แล้ว +12

      Python используют и мало кто ругается

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

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

    • @vabka-7708
      @vabka-7708 5 ปีที่แล้ว

      @@kandreyk9159во всяких ФП-языках со строгой типизацией, недостаток гибкости решается при помощи дженериков и тайплакссов

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

    Это все равно что я на джаве написал бы простенькое приложение для андроида и начал бы рассуждать что она больше ни для чего не подходит. Судя по обознанности - автор в последний раз что-то писал на js году эдак в 2010, хотя это частая точка зрения у бекендеров

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

    Добрый день!
    Я не являюсь адвокатом JS, но большая часть аргументов, которые были приведены Вами в данном видео, не имеют никакого отношения к JavaScript, а меньшая часть не имеет никакого отношения к реальности. Более того, хотя Вы, в самом начале и говорите о вкусовщине, тем не менее подаете информацию в крайне императивном виде, и звучите так, будто иного мнения / взгляда по данным вопросам просто нельзя иметь.
    "Большой код на JavaScript не поддерживаемый" - это не правда, и есть масса примеров, которые это опровергают, и первый, который пришел мне в голову - это PayPal, который был переписан на JavaScript с Java. Если на проекте не используется TypeScript, то проблемы скейлинга кода действительно могут быть, но у этих проблем есть решения, в частности: functional composition на микро и макро уровнях, immutability, flow для типизации.
    "Проблема потерять ошибку в JavaScript - проще простого" - извините, но если Вы говорите об отсутствии статической типизации, то решения этой проблемы я привел выше. Если вы говорите о чем - то другом, то я этот аргумент не понял совсем.
    "JavaScript формировался как сорняк в огороде" - А приведенный Вами же PHP - нет? JavaScript в десятки раз более последователен и предсказуем, нежели PHP, в котором, к слову, долгое время не могли сделать типы(и, вроде бы, до сих пор не сделали, но тут утверждать не буду, т.к. не слежу), не говоря о том, что в упомянотом мною выше TypeScript типизация, хоть и структурная, но с точки зрения функциональности - достаточно широкая, с огромным количеством полезных штук, таких как Union Types, Intersection Types и т.д. и т.п. Ну и да, конечно же, дженерики, которые прекрасно работают.
    "Спасибо ЭКМА за то, что язык стандартизирован, и работает во всех браузерах одинаково, но он не подходит не для чего, и написать на нем ЛЕГКО можно только что - то достаточно примитивное" - Вообще не понял, о чем Вы тут говорите: начинаете со стандартов ЭКМА, а заканчиваете тем, что язык не подходит для написания чего - то сложного. В данном случае у вас нарушена связь в цепочке суждений: вы начинаете с одного, а заканчиваете совсем другим, и это "другое" никак не относится к тому, с чего Вы начали. "Я не пью кока-колу, и в целом, предпочитаю ездить не на метро, а на машине, но на ночь окно в комнате, все таки, открываю". Кроме этого, на JavaScript пишут достаточно много "взрослого" и "сложного" кода, а именно: нейронные сети, блокчейны, платежные и процессинговые системы, и многое, многое другое.
    "Красиво хорошо и здорово можно написать даже на PHP, а на JavaScript - нет" - Почему? Вы выдвигаете тезис, но ничем его не подкрепляете. Я, c таким же успехом, мог бы заявить, что человек, которому действительно нравится дизайн Java или PHP - плохой инженер, и тут остановиться, никак не разворачивая свою мысль. Информативности и полезности в таком высказывании - ровно ноль.
    "Не можете создавать собственные классы с собственным поведением" - Во - первых, даже эта формулировка требует корректировки, и не является верной, а во - вторых, правильно ли я понимаю, что Вы заявляете, что если язык не поддерживает ООП парадигму(а точнее будет сказать, что язык не имеет такую же реализацию ООП как в Java) - то этот язык плохой? Извините, но я не вижу никакой корреляции между ООП и хорошим языком программирования. Если таковую видите Вы, то хотелось бы услышать хоть сколько - нибудь инженерной аргументации, а не спам Ваших личных вкусовых предпочтений.
    "У JavaScript есть огромное количество фреймворков, которые изменяют код" - Так, и? Это, как минимум, можно трактовать с двух разных сторон, а именно: с той, которую описали вы, и с той, что язык достаточно гибок для того, чтобы создавать на нем свой DSL и высокоуровневые абстракции, которые, в свою очередь, делают работу с ним приятнее и более flexible для программиста. Почему я должен рассматривать это, как минус языка? Не говоря уже о том, что подобная ситуация прослеживается с другими фреймворками, в том числе со Spring в Java, где конструкции порой настолько сложные, что многие даже спустя годы работы с инструментом не понимают, как и что происходит "под капотом".
    Also, если Вы что - то критикуете, то, по - хорошему, Вам стоит, как минимум, разобраться в вопросе, а как максимум - провалидировать свои выводы, пообщавшись с людьми, которые с данной технологией работают профессионально. В JavaScript, как и в любом другом языке, есть масса проблем, но то, о чем говорили в данном видео Вы, - это не то, что не проблемы в JavaScript, - это вещи, которые, как я сказал в самом начале, вообще не имеющие к нему никакого отношения.

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

      Ну, а вы, выходит, все-таки адвокат )

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

      Спасибо за такой полный ответ. Очень приятно было читать, много полезной информации.

    • @РусланГрищук-в6я
      @РусланГрищук-в6я 2 ปีที่แล้ว +1

      @@DimaProsto и аргументы адвоката довольно убедительны. Вопрос о крутости Javascript остается риторическим.

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

      идеальный коммент

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

      @@DimaProsto Нет, вы неправильно меня поняли. То, что я услышал в этом видео не показалось мне правдивым и имеющим отношение к JavaScript, о чем я, в общем, и сказал, приведя список из конкретных пунктов, которые вызвали у меня наибольшее количество вопросов. Я бы поступил подобным образом в отношении любой технологии, вне зависимости от своих предпочтений, если у меня в ней была бы экспертиза. Просто так сложилось, что в JavaScript она у меня есть.
      Я считал и продолжаю считать, что проблемы есть у любого языка, и более того: языки по-разному подходят для решения разных задач. И в JavaScript есть огромное количество проблем, многие из которых буквально выносят инженерам, которые с ним работают всю голову, просто то, что тут перечислили - это не проблемы JavaScript, это вообще непонятно откуда взятая информация и набор личных, вкусовых предпочтений, которые еще и основанны, судя по всему, на джаваскрипте года 2012-2014.

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

    Последнее время твои короткие видио становятся все хуже и хуже в плане информативности и объективности. Говорит на публичной площадке о том, что какой-то язык хуже или лучше в отрыве от конкретной задачи и проблеме заказчика по крайней мере не корректно, тем более для человека, который работал/работает в ИТ сфере и возглавляет свою компанию. Эти видио уже идут, по большей части, во вред молодым умам, который пытаются "войти в ИТ".
    У всех ЯП существуют свои плюсы и минусы, которые нужно понимать, а говорить просто, что язык плохой или нет - это как минимум не профессионально. По поводу твоих аргументов "о плохом ЯП" я могу сказать только, что они очень натянуты. Разберем по порядку.
    1. Поддержка кода. Исходя из моего опыта, от ЯП качество поддерживаемости на прямую никак не зависит. Это больше всего зависит от команды и людей, которые делают продукт.
    2. Из контекста ролика не понятно, что конкретно подразумевается под свойством "Гибкость".
    3. На счет сорняка согласен, но сейчас, в 2019 году, дело обстоит все намного лучше, чем в былые годы. Если вам нужен ООП со своими плюшками, тогда стоит смотреть уже в строну TS(TypeScript) или Dart. На счет классов для скрипов браузера порой это просто излишне. Хотя в последних версиях спецификации EcmaScript(JavaScript) можно создавать "классы", которые являются "сахаром", того что давно было в JS. Да, они не совсем те классы, которые есть в Java, но они там есть как сущность. Рассуждать о какой-то технологии мало мальски не погрузившись в ее "философию" и принципы, не корректно.
    4. Эффекты, которые отображаются на экране порой намного сложнее реализованы, так как для примитивного круглого индикатора загрузки нужно вспомнить курс школьной математики, если пилить его самостоятельно с 0. Порой на фронтах для того, чтобы добиться красивых эффектов нужно запариться больше, чем большая часть бизнес логики в средних энтерпрайз проектах.
    5. На сколько я знаю, уже в малых и средних компаниях JQuery считается deprecated и за его использование его бьют "по рукам".
    У меня порой складывается впечатление, но ты как специалист в ИТ, в широком понимании, застрял в районе 2012-2014 годов.
    Мне кажется, у тебя "синдромом утенка" по отношению к ООП. ООП - это подход к разработке, который стоит применять, там действительно где он нужен. Это примерно как услышать про singleton и пихать его везде.
    P.S. Я сам начинал свой путь с C/C++, Java, сейчасработаю в основном с Golang/Python. Ничуть не жалею о проделанном пути. Не понимаю людей, который просят вашего мнения, о ЯП ______ (Kotlin, Golang, Python, и т. д., подставьте нужно). Ребята, не нужно ждать мнение "ЭКСПЕРТОВ" в том или ином вопросе. Они могут только высказать свою СУБЪЕКТИВНУЮ точку зрения, но подходит это вам или нет решать вам. По факту, это перекладывание ответственности за принятие решение в вашей жизни и своих плеч на плечи любого из "ЭКСПЕРТОВ", которого вы будете слушать. Ребят, просто пробуйте использовать любую технологию самостоятельно под ваши цели и задачи. С течением времени вы сами внутренне поймете, хорошо тот или иной инструмент или нет. Все что я использовал в своих аргументах и обоснованиях это тоже мой субъективный взгляд.
    Всем удачи и творческих успехов!

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

      Под каждым словом готов расписаться. Поддерживаю.

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

      Аву смени быстра

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

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

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

      @@deniskoroliov1039 нет, обсирать твое мнение не будем, нам на него плевать)))

    • @ob1chyk
      @ob1chyk 4 ปีที่แล้ว

      Полностью поддерживаю!

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

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

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

    Сергей, признайте наконец, что Вы просто не можете смириться, что у программистов на JavaScript и TypeScript есть деньги, есть женщины, а что осталось у Java и С# программистов? Только геморрой, простатит и шутки про Fortran и Cobol 😀

    • @bekgrom2562
      @bekgrom2562 2 ปีที่แล้ว

      😂😂👍

    • @SergeyGrebenkin
      @SergeyGrebenkin 2 ปีที่แล้ว

      😂😂😂

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

      У программистов есть женщины?
      Невозможно.

    • @takemukashov3064
      @takemukashov3064 2 ปีที่แล้ว

      @@brianryan4053 который в итоге компилиться в JS 😅

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

      Заходит как то Cobol и Fortran в бар...)))

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

    А То-то Илон Маск интерфейс управления своими ракетами на JS решил делать... Дурак же! Не видел Серегиного видео!

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

    Заголовок надо было полный делать у видео: "Почему я считаю, что JavaScript плохой язык? Потому, что я в нём нечего не понимаю"

    • @ИмяФамилия-о4т5р
      @ИмяФамилия-о4т5р 5 ปีที่แล้ว +1

      @@dark_evil77 В большинстве случаев высшее образование не нужно.

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

      Имя Фамилия не согласен, да для фронта не нужен диплом или в некоторых компаниях не требуют диплом, но для зарубежных компаний диплом обязателен!

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

      @@dark_evil77 живу в Канаде, диплом необязателен как и в США

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

      Rollo и как там обстоят дела с вебом

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

      @@deanchikdeanchik9885 единственное чем отстаёт запад от снг это веб. Это непаханное поле и огромное количество возможностей

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

    это точно мнение о JS ?
    если знания автора сводятся к созданию перелистыванию картинок, тогда да ))

  • @АндрейМасалов-ц7ж
    @АндрейМасалов-ц7ж 5 ปีที่แล้ว +108

    Я считаю, что JavaScript НЕ является плохим языком и вот почему.
    Во-первых, JavaScript - это язык, который посредством своей асинхронной природы, отлично реализует событийно-ориентированную парадигму программирования, что на мой взгляд, является лучшим решением для построения пользовательских интерфейсов. За счет демультиплексирования событий (разделения процесса выполнения), происходит эффект параллельного выполнения кода, при использовании совсем небольшого количества ресурсов системы (всего 1 потока). Чтобы добиться подобного, например, на Java, нужно поднимать отдельные потоки, которые, в свою очередь, требуют уже намного больше ресурсов от системы. К тому же, в определенные моменты времени, некоторые потоки на Java будут просто простаивать и тем самым задействовать лишние ресурсы системы. Поэтому, я считаю, что за счет асинхронной парадигмы, JavaScript является лучшим языком для Web на стороне клиента.
    Во-вторых, JavaScript является все же полноценным ООП языком. JavaScript реализует прототипно-ориентированный подход, а не класс-ориентированный, как в Java. JavaScript поддерживает все основополагающие концепции ООП: инкапсуляция реализуется посредством замыканий, наследование происходит с помощью ссылок __proto__, полиморфизм определяется простым переопределением методов. Да, может быть оперировать прототипами не совсем удобно, но JavaScript не стоит на месте и активно развивается. Стандарты ECMAScript принесли с собой классы, а Babel и полифилы решают задачу поддержки этих нововведений в старых версиях браузеров. К тому же, данный язык может быть строго типизированным посредством TypeScript, который удобно поддерживать.
    В-третьих, к вопросу о производительности JavaScript. Для математики активно внедряется WebAssembly, для графики существует WebGL 1.0/2.0 и активно разрабатывается WebGPU. При комплексном использовании данных Web API и JavaScript можно уже сегодня делать крутые вещи, например: playcanv.as/p/yipplmVO/
    Я думаю, что в будущем у всех будет установлен лишь браузер и все будет работать через него. Поэтому, на мой взгляд, язык JavaScript ждет очень перспективное будущее.

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

      а щас спустя 2 года, что скажите на счёт JavaScript?Что лучше посоветуете новичку который хочет стать веб разработчиком, Python или JavaScript?

    • @АндрейМасалов-ц7ж
      @АндрейМасалов-ц7ж 3 ปีที่แล้ว +16

      ​@@davidkbs8657 Всё зависит от задач. Если Вы хотите разрабатывать пользовательские интерфейсы, то здесь выбор очевиден - JavaScript. Если же Вы хотите заниматься разработкой серверной части приложений, то здесь всё не так однозначно. Серверная часть может быть написана с использованием множества языков программирования, начиная от Go, заканчивая тем же Python. Нужно выбирать соответствующий инструмент, а язык программирования именно им и является, под конкретную задачу.
      Лично я бы выбрал JavaScript, собрал на нем полноценное FullStack приложение, например, на том же Node.js, а дальше уже решил куда развиваться - во FrontEnd, BackEnd или FullStack. Когда с этим разберетесь, то легко ответите на свой вопрос.

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

      @@АндрейМасалов-ц7ж Ок, спасибо

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

      Ну не знаю. Я новичок и js мне показался капец каким отвратительным, слишком гибким и сложным языком. Когда начал изучать java то это было просто просветление. Может конечно я просто не фанат динамической типизации😅

    • @АндрейМасалов-ц7ж
      @АндрейМасалов-ц7ж 2 ปีที่แล้ว +5

      @@bohdanbrazhynenko9684 динамическая типизиция, да, такое себе, однако, данную проблему можно решить путем использования того же TypeScript. Что касается сложности языка, то Вы, наверное, понимаете под этим асинхронную работу языка "из коробки". Да, есть некий уровень сложности в понимании работы Event Loop, но достаточно один раз разобраться с этим и больше вопросов не возникнет. Ну а что касается отвратительности языка, повторюсь, нужно исходить из задач, которые нужно решать, и на мой взгляд, JavaScript является очень достойным кандидатом при решении задач по построению пользовательских интерфейсов, так как изначально сам язык создавался именно для решения подобных задач.

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

    Это не стоило выкладывать ;)

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

    Аргументы уровня : рыба плохая потому что не умеет лазать по деревьям(

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

    А теперь вспомним о ReactNative. И сколько на нем мобильных приложени написано и весьма мощных.

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

    А что он хоть на один комментарий ответит ?
    Я б не пошел к такому специалисту. Хает язык здания о котором у него с 2006 года

    • @СерегаВонг
      @СерегаВонг 5 ปีที่แล้ว +1

      Ахахах в точку

    • @jankaban2871
      @jankaban2871 4 ปีที่แล้ว

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

    • @standoff-lh1jf
      @standoff-lh1jf 4 ปีที่แล้ว

      Вы в курсе если бы не JS не было бы ЯНДЕКС БРАУЗЕРА, не было бы наших любимых сайтов, ХРОМ НЕ БЫЛО БЫ, не было бы вк,(сайта), и тд

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

    Вот что с людьми джава головного мозга делает. Я исключительно в хорошем смысле слова. Потому как аргументация непробиваемая, и продиктована она суровым энтэрпрайзом. И можно было бы тут и остановиться если бы не одно но...
    Вы Сергей вроде как по возрасту должны были застать те времена, когда не то что ИДЕ, редакторов человеческих не было. И вполне возможно держали в руках язык ассемблера. Что-то серьезное делали врядли, таких людей сразу издалека видно, но вполне возможно были с ним на ты. Так вот напомните мне где там хотя бы намек на типизацию? А я замечу, пока вы вспоминаете, что это был язык выступавший обязательной базой для таких решений как например управление самым затрапезным атомным реактором и был там не от прихоти, а потому что иначе было нельзя. И что самое интересное есть места где это ПО все так же выполняет свои задачи. Причем неплохо выполняет должен я вам сказать.
    Да и черт с ним с ассемблером, вот например когда программировали посадочный лунный модуль, там вообще проволочки наматывали. И подишь ты намотали и посадили. Без всякого энтерпрайза да почти с первого раза. Сейчас вон с третьего раза считается удачей.
    Конечно я передергиваю, и Ваша позиция не столько про то, что где то что-то невозможно, сколько про то, что при помощи чего-то можно сделать все быстрее и больше и качественнее. Конечно. Только не слишком ли Вы стали полагаться на инструмент, который, как мне показалось, стал иногда диктовать вам решения, а не вы ему?
    JavaScript в его нынешнем состоянии, это язык анархистов. Язык который позволяет сделать почти все что тебе хочется в форме, которая тебе ближе всего. И ведь именно из таких форм и появлились потом хорошие вещи, вроде той же джава. И давайте положим руку на сердце, джава уходит в прошлое. Не потому что она плохая, напротив. Но потому что она скучная. То есть та, где нет жизни.
    Скриньте мой прогноз, такие прекрасные языки как питон или руби или джава скоро уйдут в небытие. И их места распределят между собой, внезапно C или тот же язык ассемблера. И произойдет это именно потому что JavaScript. Потому что JavaScript снова дал им возможность хулиганить.
    С глубоким уважением, без какой либо задней мысли.

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

      🔥🔥✊✊

    • @gordonfram
      @gordonfram 2 ปีที่แล้ว

      На JavaScript пишет каждый второй программист. У вас там ахеренная конкуренция и как бы не был функционален JavaScript, то основная задача его - это frontend/веб разработка. Питон и другие языки ещё развиваются, а с нынешним диктатором вообще все прогнозы можно удалить сразу, по типу того какие языки надо учить, а какие нет. JavaScript уже банальщина стала и как именно мне кажется, то через 10 лет этот язык будет как Java

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

      ​@@gordonfram Не будет по одной простой причине: Java занимаются люди которые понимают что делают. JavaScript делают в том числе люди, которые делят на 2 используя div.
      Как следствие, первый язык может заставлять ньюфага ощущать свою неполноценность и от того страх что-либо делать для этого языка.
      Второй же - JS это франкенштейн, где каждый кто потратил 10 минут на чтение своего первого мануала уже знает как можно сделать лучше.
      В результате чего, такие языки как Java и прочий суровый интерпрайз - мертвы. A JS - жив и будет жить до ни скончания веков в силу того, что каждый знает как сделает его лучше. Ну или думает что знает. И при этом имеет возможность реализовать свои планы по пришиванию к франкенштейну восьмой ноги.
      Спросите себя, где сейчас такие крутые вещи как та-же Scala или прости господи фортран? Они там же, где и люди, которые понимаю почему JS сам по себе никакого отношения к вебу и фронтенд разработке не имеет. Потому что WEB и фронтент разработка существует благодаря громадному количеству API к которому JS не имеет ВООБЩЕ никакого отношения.
      JS - это простой и во многом гениальный скриптовый язык, у которого как и у любого скриптового языка нет своего ввода вывода. Но есть набор инструментов, которые позволяют сделать жизнь человека комфортнее в любых условиях, где кто-то может вместо JS тот самый ввод вывод обеспечить.
      Такая вот сермяжная правда.

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

    А еще динозавры заполоняют планету.
    Краткая суть видео "JS плохой, потому что не типизирован, а про способы типизировать я не слышал".

    • @СтепанСавельев-м8й
      @СтепанСавельев-м8й 5 ปีที่แล้ว +7

      Не смотрел, но ему про TS рассказывали?

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

      @@СтепанСавельев-м8й нет, но Сергей видел JQuery. Гадость говорит, еще та )

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

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

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

      ES6

    • @РезниченкоРостислав
      @РезниченкоРостислав 5 ปีที่แล้ว +4

      @@skpavlenko а не за ним ли висит баннер ангуляр 2+ ? )

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

    ЛОЛ ))) дед забыл выпить таблеток )) Когда последний раз на JS код видел? Небось до сих пор думает что JS это чтобы картинки по экрану двигать )

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

    У меня ощущение, что он постоянно в коде что-то теряет и только в джаве может это найти. Если тебе jquery поменял js до не узнаваемости - может веб это не твое?

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

    Нет плохих языков, есть плохие программисты)

    • @mykola-rohoza
      @mykola-rohoza 5 ปีที่แล้ว +1

      Дэлфи, Р-ланг, Бэйсик прочая мертвая нечесть мира сего? Просто так что ль вымерли?

    • @karmamaker3378
      @karmamaker3378 5 ปีที่แล้ว

      Cobol -- ?

    • @wakeuphuman-
      @wakeuphuman- 5 ปีที่แล้ว

      @@mykola-rohoza на VB6 полно людей пишет. Умер, не спорю, но еще в ходу.

    • @ИмяФамилия-о4т5р
      @ИмяФамилия-о4т5р 5 ปีที่แล้ว +4

      Думаю, есть и плохие языки, и плохие программисты :)

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

    Под каждый болт своя отвёртка. Напишите красиво 3D движок на PHP и любуйтесь. Крайность на крайность. Сейчас же вы искренне признались что просто не умеете подбирать отвёртки. Так видят профессионалы.

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

    Расскажите ещё об SPA фреймворках, какие на данный момент актуальны у заказчиков (Ember, Angular, Vue, React)

    • @Васенков
      @Васенков 5 ปีที่แล้ว

      Vue

    • @rubenmarkosyan4736
      @rubenmarkosyan4736 5 ปีที่แล้ว

      Сейчас по популярности они вроде так идут: React, Angular, Vue, Ember , но Vue догоняет

    • @ЮрийКарпов-э3ч
      @ЮрийКарпов-э3ч 5 ปีที่แล้ว

      Vue и React

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

      Жиквери популярнее энивей

    • @ЮрийКарпов-э3ч
      @ЮрийКарпов-э3ч 5 ปีที่แล้ว +1

      @@undefined_user36 популярнее, но полноценный spa на нем проблемно будет написать энивей. Да и концепция спагетти не пойдет для серьезных вещей. Да и компоненты на джейквери не написать. А в vue и react компонент - это блок разметки + стили + поведение. Заключение: если spa - то vue и react.

  • @Mike-hp3fh
    @Mike-hp3fh 5 ปีที่แล้ว +14

    1) "легко потерять ошибку". Эту проблему частично решает TypeScript и среда разработки, и в полной мере решают тесты.
    2) "сформировался как сорняк". Важно только то какой язык сейчас и что браузеры сейчас являются лидерами в создании интерфейсов и легкой доступности программ и их в этом уже никто не догонит. У JS огромная поддержка, которая снижаться не собирается и поэтому JS будет активно развиваться.
    3) "Легко можно написать только что-то достаточно примитивное". Я уже сомневаюсь что автор вообще знаком с JS. У меня есть огромный опыт разработки сложных вещей на C#, Java, простых программ на PHP, C++, и JS оказался наиболее удобным языком для написания сложных программ и реализации своих творческих идей. Кроме того он еще и высокопроизводительный, некоторые фрагменты кода компилируются так как будто они написаны на чистом C++.
    4) "Вы не можете создавать собственные классы". Ну точно, автор последний раз пользовался JS лет 10 назад.
    5) "Есть фреймворки изменяющие полностью этот язык". Пример с JQuery - это не JS, это библиотека для кроссбраузерной работы с DOM. Фреймворки не меняют язык, они только облегчают создание интерфейсов.
    6) Сейчас можно писать кроссбраузерные программы используя самые последние возможности языка и встроенные объекты типа Map, Set,... используя babel + corejs
    7) Мощный компилятор v8 есть сейчас и в NodeJS и во многих браузерах. Чтобы добиться высокой производительности нужно только поэкспериментировать и выработать определенные правила разработки, а v8 уже сделает за тебя все оптимизации. Языки будущего и должны быть такими - они должны писать программы за разработчика, оставляя разработчику время для творчества.

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

      'Просто уложил на лопатки' красавчик)

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

      Ух!
      Я, уак начинающий учить с нуля JS(до этого немного тыкался в C#, Java, Python) сначала расстроился, а прочитав Ваш коммент прям отлегло, духом воспрял обратно :)

  • @СерегаВонг
    @СерегаВонг 5 ปีที่แล้ว +7

    Сразу видно что человек понятия не имеет как работает js, а уж что-то критиковать это мы можем, во первых весь js построен на объектной модели и ООП там есть, во вторых в nodejs вы явно не углублялись ибо его возможности очевидно намного лучше чем у php, что можно сделать на node у пхп точно не получится, во вторых сложно переоценить неблокирующий код в некоторых ситуациях, то что вы говорите об ограниченности языка, что якобы можно только элиментики подвигать - это лишь ваша ограниченность в данном языке. По поводу фреймворком, они не влияют ни на синтаксис ни на исходные вещи, они лишь предоставляют функционал упрощающий уже имеющийся, при чем тот же jQuery это всего лишь пара функций хэлперов представленных в объектном виде, ну что тут сказать, я на самом деле не вижу причин в вашей необъективности, сдается мне это просто нежелание ничего другое принимать

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

    Про python интересно послушать

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

      Согласен

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

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

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

      Да, Сергей, просим

    • @Victorius-ua
      @Victorius-ua 5 ปีที่แล้ว +2

      @@Smolandgor Питон начал двигатся в сторону Gradual Typing. Поэтому большие проекты стало поддерживать намного легче

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

      @@Smolandgor в python 3.5 появился type hinting

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

    Сергей, как и писали ниже в комментариях, действительно, очень хотелось бы услышать Ваше мнение на тему Go (Golang) относительно серверной высоконагруженной разработки. Какие перспективы данного языка? Потеснит ли Java в поприще highload или enterprise? Язык уже не особо и сырой, спрос на него есть.

    • @Jeff.Wilson
      @Jeff.Wilson 5 ปีที่แล้ว +2

      Я думаю хотя бы уже потому, что в Го нет нормального ООП и Дженериков, с энтерпрайза он Джаву не вытеснит.

    • @W_0_W
      @W_0_W 5 ปีที่แล้ว

      @@Jeff.Wilson "Нормальное" - это как в джаве? Если так судить, то конечно. Но на самом деле в Го нет никаких проблем с ООП, просто оно там по-своему реализовано.

    • @LobanovSpace
      @LobanovSpace 5 ปีที่แล้ว

      Не потеснит

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

      Перерыл кучу репозиториев Go, включая топовые и так и не нашел кода без классической лапши, где структуры кода нет, зато есть куча nested if и switch, а из Clean Code вообще ничто не соблюдается. Если кто-то встречал примеры качественного кода (желательно реальное веб приложение), поделитесь пожалуйста ссылкой.

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

      @@alexeymezenin , чет кажется мне, что Go - это новый php. Причем 4))

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

    Динамическая типизация - могила для любого языка. Даже если написать приложение с нормальной архитектурой (которая возможна для js), а потом через неделю зайти посмотреть на какой нибудь метод с сигнатурой @function edit(id, payload)@, то сразу вопрос, что это мать его за payload и какие у его есть свойства, методы и т.п?

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

      Ну можно ведь давать нормальные имена или в документации прописывать, что несут аргументы?

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

      @@me2beats313 в ide к дефинишену все ровно нельзя перейти. Документация))) даже коммент к коду лень оставить.

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

      @@me2beats313 имена не должны содержать тип данных

    • @vassyapupkin2841
      @vassyapupkin2841 5 ปีที่แล้ว

      Typescript идёт на помощь)

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

      @@vassyapupkin2841 да действительно, был бы ts нативным в браузерах)

  • @АнтонВладимирович-ч7н
    @АнтонВладимирович-ч7н 5 ปีที่แล้ว +3

    php осуществляет лучшую поддержку кода, чем node.js ? А как же огромный набор окружения? Извините, что дорогого можно написать на php, кроме веб сайтов.. там в принципе однотипный сценарий решения задач..
    Естественно, каждый язык под свои нужды. Но чтоб прям вот так сказать...
    Функциональность js ограничена? Заплатка, чтобы крутить картинки?
    А как же возможность за несколько часов развернуть полноценный сокет-сервер, с реалтайм приложением, тут же запилить базовый фронт на любом фреймворке, у которого гигантское комьюнити, бахнуть ещё за несколько часов приложение на реакт нейтив, и связать его с микроконтроллером, который тоже управляется на JS.
    JS давным давно вышел из рамок браузеров и вообще веба. Можно писать много низкоуровневого функционала. Работать фискальными принтерами, терминалами оплаты, с блокчейном, IoT устройствами.
    Разве возможность быстрой разработки, для бизнес-процессов совсем не играет роли?
    Странно считать, что JS прям вот такой плохой. Есть конечно минусы, но где их нет?

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

    В JS есть классы и есть возможность наследоваться и уже даже приватные поля появились! :)
    (я уже молчу о том, что можно делать с Typescript).
    JS это нормальный поддерживаемый язык, недостаток у него только один - динамическая типизация (собственно такой же недостаток и у всех остальных языков с динамической типизацией), все остальное очень даже хорошо.
    Но надо понимать что это в первую очередь событийно ориентированный мультипарадигмальный язык и не писать на нем паттернами джавы.

    • @владимирсенцов-р1ю
      @владимирсенцов-р1ю 5 ปีที่แล้ว

      Typescript это другое дело.

    • @ВладиславНиков
      @ВладиславНиков 5 ปีที่แล้ว +3

      TypeScript тоже не так хорош, как хотелось бы. Взять, например, перегрузку методов. То, что в JavaScript появилось что-то похожее на классы, это хорошо. Но нужно не забывать, что это все еще далеко не те классы, которые предоставляют нам Java и C#. К тому же во многих местах JavaScript ведет себя не логично и так будет и дальше из-за обратной совместимости. Ошибку там действительно поймать достаточно легко. Ну и ко всему в некоторых местах поведение зависит от браузера

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

      Почему динамическая типизация - это плохо? Если нужно что-то по-быстрому забабахать, то джс топ выбор. Со статической типизацией программы пишутся дольше, хоч они в результате лучше расширяемые и поддерживаемые. Язык не может быть сам по себе плохим(как правило). Он хорош или плох только в контексте какой-то задачи

    • @LobanovSpace
      @LobanovSpace 5 ปีที่แล้ว

      Ну хз

    • @владимирсенцов-р1ю
      @владимирсенцов-р1ю 5 ปีที่แล้ว +2

      @@TedFanat Это первую неделю дольше пишутся. А начиная со второй третей намного быстрее. И чем статическая типизация замедляет - неявно ? Наоборот можно часто даже код не читать. Из типов параметров и возвращаемого значения все ясно.

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

    Ты, бро, не разобрался ;)

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

      интересно в чем!

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

      В балансе плюсов и минусов JS, в том, почему возникла мода на node.js

    • @ВладиславНиков
      @ВладиславНиков 5 ปีที่แล้ว +6

      @@snizhiv Мода на node.js возникла только потому, что один язык на front end и на back end. Все равно он даже и близко не обогнал asp и php. Так, что это только для тех, кто хочет быстро войти в back end со знаниями front end

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

      @@ВладиславНиков согласен

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

      @@ВладиславНиков вы ошибаетесь. У ноды есть и другие преимущества. И выстрелила она как раз за счет них. Хотя иметь однородный стек везде это тоже немало.

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

    Я php разработчик, но по факту fullstack, так как в свое время в жизни сделал неправильные выборы и разрабатываю проекты сам. Каждый раз, когда сталкиваюсь с необходимостью добавить фичу с помощью (этого вражеского) JS, приходится проходить много стадий, начиная с сомнений - а надо ли это вообще. Какие-то простые вещи, конечно, гуглятся, решения находятся, но в итоге все равно никогда не знаешь, где ждать беды. То в каком-то браузере что-то не так отработает, то ты заточил все на клики, а с сенсорным управлением на айпэде что-то пойдет не так. Или не учтешь что-то в скрипте, и через пару дней на какой-то случайной странице вылезет баг - что-то другое важное не отработает из-за ошибки скриптов на странице... И самое бесячее - когда находишь несколько разных способов решить свою задачу, и никак не можешь понять, какой из них более правильный. Например, гуглишь как получить текущую позицию прокрутки экрана, находишь несколько отличающихся вариантов, в разной степени обеспечивающих кроссбраузерность, дальше пытаешься их объединить, чтобы учесть максимум возможных случаев. А в задачах посложнее в итоге вообще получаешь уродский код, и даже он не гарантированно отработает во всех браузерах. И не все задачи можно решить с помощью того же jQuery, у которых все это уродство спрятано под капотом. Таких проблем никогда не встретишь в бекенде, так как среда выполнения твоего кода одна и ты полностью ее контролируешь. Но, как ни печально, когда в одиночку разрабатываешь крупный проект, не все задачи можно решить силами бекенда, и приходится лезть в это js-шаманство. Но проблема, с моей точки зрения, не в самом языке, а как раз в его внедрении. Мне кажется, что давно можно было как-то договориться и сделать единый интерпретатор для всех браузеров. И для css тоже так сделать. Чем вообще занимаются разработчики браузеров? Выходят новые фишки, проходят годы, и все равно приходится продолжать использовать дублирующие -webkit значения... Я считаю, что людям, разбирающимся во всех кругах этого фронтенд-ада, нужно реально медали выдавать. А разработчиков браузеров вешать за яйки. Браузеров у нас сколько, десятки? А скольким тысячам, если не миллионам, веб-разработчиков весь этот зоопарк доставляет боль? Я сегодня специально гуглил - до сих пор даже в нашем любимом и прогрессивном хроме не появилось поддержки position: sticky для приклеивания целой шапки таблицы к краю экрана, можно приклеить только отдельные ячейки, и то - ячейки остаются при этом без рамок. И это продукт компании Google. Так если даже у них кончи работают - что уже о других говорить... PHP уже стал крутым языком, а браузеры до сих пор делают рукожопы, из-за которых веб-разработчики не могут создавать нормальные эффективные решения, постоянно приходится скотчем костыли приклеивать со всех сторон. Короче, бомбит от всего этого...

    • @viy8402
      @viy8402 5 ปีที่แล้ว

      А забить хрен и писать код только под хром и мозилу не? Все остальные браузеры используют в меньшем количестве, обьяснить заказчику что если он хочет адаптивности под все браузеры то это потребует больших вложений в проэкт.. Хотя мозилу тоже не используют большинство но мне она нравится потому что у мобильной версии есть установка плагинов в отличии от помойки гугл мобайл, единственное что огорчает так это то что я не могу привязать синхронизацию гугл закладок к мозиле, чисто создавай новый акк для мозилы и экспорти закладки и юзай их там.

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

      У тебя проблемы с логикой - чини. То, что ты описал - никакого отношения к js не имеет. Это проблемы api броузеров и это от языка никак не зависит.

    • @chat_mayevskogo
      @chat_mayevskogo 5 ปีที่แล้ว

      Показывай клиенту что многие крупные сайты не поддерживают старые браузеры, это норма - хром , сафари, лиса, эдж, ие11 - тоже многовато но более менее одинаково

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

      ​@@rustonelove Я так и сказал - по большому счету все это камни в огород разработчиков браузеров. Если бы они все (хотя бы современные версии) работали в точности одинаково - применение js уже можно было бы не называть шаманством.

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

      ​@dEF, @@chat_mayevskogo У меня в принципе нет привычки проверять в нескольких браузерах, даже в лисе редко проверяю. Я в первую очередь бекенд разработчик, прибегаю к js только ради косметических фишек и ajax-запросов. И в большинстве случаев заказчику тоже пофиг, но пользователи продукта бывают разные. Часть из них гуманитарии, настолько, что засовывают отсканированный документ в .doc файл перед занрузкой на сайт, часть из них в возрасте, и у части из них, возможно, до сих пор winXP и старый эксплорер. И так как на них завязан бизнес, и они пользуются продуктом - лучше прогнозировать пессимистично. Но даже если бы можно было забить на все браузеры кроме хрома - все равно даже хром не все поддерживает. Заказчик очень хотел приклеить шапку (2 строки) и левую часть (3 колонки) большого отчета к краям экрана, и чтобы это сделать - пришлось шаманить сверху и слева наложение таблиц-копий, потому что существующее в css position:sticky в хроме нельзя применить по самому востребованному назначению - к тегу thead. Да, это не проблема js, но если копнуть дальше - для решения задачи приходится прибегать к js, и снова нет уверенности, что все будет работать как ты хочешь, потому что это костыли. Например, в описанном случае, даже если после наложения таблиц все границы ячеек совпадают, стоит изменить масштаб - и все ломается, приходится отслеживать еще и это событие и перестраивать размеры. Как следствие - получаем либо тормоза, либо отставание перерисовки шапки. И так как человек может смотреть с мобильного браузера и свайпами масштабировать - это нельзя считать невероятным событием...

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

    Интересно мнение о TypeScript

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

    Весь ужас JavaScript в том, что если начинающий программист выучил JavaScript то ему уже будет трудно выучить другой язык. Первый язык программирования должен быть современный OOP язык

  • @великаячетвёрка-м1к
    @великаячетвёрка-м1к 3 ปีที่แล้ว +2

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

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

    А почему в JS нельзя свои классы создавать? Я сейчас React JS изучаю, там создание своего компонента заключается в расширении класса React.Component

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

    Я пишу на js с flow и таким злым линтером что гибкость мне только снится.

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

    Для браузера и верстки JS необходим, иначе странницы будут статическими. Пока нету альтернативы JS будет оставаться лучшим в этом.

  • @0zzburn313
    @0zzburn313 2 ปีที่แล้ว +1

    Можете новое видео сделать? Что с js в 2022, что изменилось?

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

    ES6 классы? Это синтаксический сахар над функциями - конструкторами, но какая разница, если в итоге код и поведение соответствуют принципам ООП, в частности SOLID? Flow.js и TypeScript? Конечно многое зависит от того, насколько разработчик хорошо заведёт линтер, правила типизации, и её строгость, но в итоге контроль типизации ничуть не хуже, чем в классических языках. Разница лишь в том, что не из коробки. Лично в моём проекте хорошо отлаженная проверка типов через Flow.js, которая спасает регулярно, в частности не даёт коммитить код "с душком", только если явно не указать, что опускаем ошибки.

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

    TS можно использовать

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

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

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

      ничего кроме чистого джаваскрипта и питона (чистого) не пробовал, буду учить REACT для JS и потом PYTHON, чтобы экзамены сдать (да-да, я школьник, у которого до 10 класса, вообще не было программирования)

  • @МаксимКоробков-программисттрей

    Учу React JS и делать можно очень много и качественно с типизацией итд. Просто не надо все в кашу превращать длинными кодами...

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

    Для сайтов исполняющихся на стороне клиента вариантов просто нет, а сейчас стараются делать в основном single page app. А сравнение похоже на то, как ламборгини плоха для поездок по грязи. Она просто для этого не предназначена и не создавалась изначально. Писали язык для исполнения в браузере и эту функцию он и продолжает выполнять и будет выполнять в дальнейшем.

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

    Мир считает по другому. И javascript развивается и занимает новые места

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

    Без поставленных целей и задач давать оценку ЯП - это просто непрофессионально.

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

    "Утверждение о том, что статическая типизация уменьшает количество ошибок является мифом. Нет ни одного исследования, доказывающего это. Наоборот, есть исследования, из которых выходит, что нет никакой корреляции между количеством ошибок и статической/динамической типизаций. Либо она есть, но исчезающе мала (в пользу статической типизации). Что же на самом деле эффективно снижает количество ошибок? Это TDD - исследования при поддержке Microsoft и IBM показали эффективность метода и снижение количества багов на 40-90%"

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

    А зачем писать на NodeJS большой проект, когда есть Java? Он идеален для другого:
    * REST API, как правило это бэкенд для всяких приложений или фронта на React/Angular/Vue/etc.
    * Сайты, особенно большие. Почему не твой любимый PHP - читай ниже.
    * Кроссплатформенное ПО на Electron.
    JS код в сравнении с другими языками читается в разы лучше, а самого кода в разы меньше. Посмотри стек Express + Sequalize, это просто прекрасно. А потом посмотри поделие на каком-нибудь Yii. Ну или взять ту же Java, что-то не энтерпрайзное всё равно выглядит избыточно в сравнении с NodeJS стеком (даже если использовать простенький Spark).
    Почему вышеперечисленное не любят писать на PHP? А ты давно в код заглядывал? PHP - это всегда говно по определению. Любой фреймворк можно использовать как наглядное пособие к твоим лекциям по антипаттернам, они там все и ещё мешок говна сверху. А код проектов словами не описать. Вот у тебя преподают WordPress, а ты видел его код? Это цветочки. Потому что PHP - это одно сплошное legacy, и PHP веб-макаки воспитаны этим legacy. Найти адекватного PHP кодера практически нереально и почти всегда такие кодеры не используют PHP как основной язык, т.е. изначально не пхпшники. Большинство пхпшников неадекваты на всю голову.
    В общем, если не продолжать (а продолжать можно бесконечно): проекты на PHP максимально говённые, PHP кодеры максимально неадекватны, в самом языке много процедурного стиля, который не всегда (почти никогда) имеет ООП альтернативу. На PHP говённые и неудобные фреймвроки/библиотеки, в сравнении с другими языками их меньше.
    Вот почему все так полюбили NodeJS. Если есть выбор, на каком стеке начинать проект - выбирают что угодно, только не PHP. Стек Python тоже грешит говнокодом и многословием, поэтому остаётся NodeJS. Согласен, нормально писать можно на любом языке, хоть микросервисы на чистом Си лепить, но см выше. NodeJS - это путь наименьшего сопротивления.
    Ты не верно рассматриваешь JS - как конкурента Java на энтерпрайзе. А он конкурент PHP в нише сайтостроения. Это страстная любовь многих фрилансеров.

    • @karenmelikyan377
      @karenmelikyan377 2 ปีที่แล้ว

      Ой не звезди, звездун от node.js даже его создатель отрекся 🤣
      PHP 8.1 в синтаксисе почти не уступает Java. И самый быстрый из интерпритируемых. Конечно, если судить о языке по легаси, то твой JS это говно оберутое в фантик. Что в легаси что сейчас 😂 Сейчас будешь звиздеть про асинхронность, так в 90% случаев где исспользуется PHP она на хер не всралась. До сих пор пыхе хватало ее многопоточности. Хотя сейчас уже будет введен файберс для покрытия оставшихся 10% случаев. Но все равно сила пыхи не в этом. Она простая, легко поддерживаемая с кучей плюшек заточенных под вэб. И ларавель фрейм один из самых эффективных в мире.

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

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

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

      Ну вот так

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

      Потому что видео не о TS? Можно тогда уже и о флоу, и о других реализациях, коих тысячи, но так же умереть можно, пока всё вспомнишь

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

      @@faramozayw1654 ts это js с прикрученным сверху тайпчеком и парой своих примитивных фишек. Спокойно одно на другое заменяется. По поводу "тысячи" - нету никаких тысяч. Сейчас живо только одно - ts, а всё остальное мертво.

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

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

    • @Victorius-ua
      @Victorius-ua 5 ปีที่แล้ว

      Наверное потому что ts другой язык программирования

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

    Почему даже на PHP? вы видели PHP7 ребята? да он давно уже на том же уровне что и та же JAVA

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

      В плане читаемости он Java явно обогнал. Ровно как и Scala.

  • @СергейПресняков-о4р
    @СергейПресняков-о4р 4 ปีที่แล้ว +3

    Вроде же VSCode написан на JS

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

    нет в 6 версии есть классы, только нету таких понятий как абстрактный класс или методов абстрактных, интерфейсов нету, также нету методов Protec и private, можно Private можно обыгрывать, но в остальном нет

    • @владимирсенцов-р1ю
      @владимирсенцов-р1ю 5 ปีที่แล้ว

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

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

      @@АндрейБ-к3к классы в жаве - это синтаксический сахар над функциями. Дальше что?

    • @Adrian190689saa
      @Adrian190689saa 4 ปีที่แล้ว

      Так все это есть в Typescript

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

    JS очень красивый и гибкий язык, а изобилие библиотек и фреймворков делает его ещё и пригодным для создания веб-приложений любой сложности. Но поскольку он динамический, то на нём лучше прогать В функциональном стиле с последующим юнит тестированием, что приводит к достаточно качественному программированию.
    React, Vue, Ember, Knockout, Redux, Node и т.д. начните изучать их и поймёте, что статическая типизация зло.

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

    Почему на скале код муторно поддерживать? 3й год и пишу и поддерживаю, отличный язык, намного лаконичнее Джавы

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

    Автор никогда не разрабатывал полноценные frontend приложения на JavaScript и своим мнением показал лишь свою некомпетентность и глупость. Он даже в описание совершил элементарную ошибку в название языка, о чем с ним можно беседовать?

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

    Берешь typescript и никаких проблем с поддержкой кода и потерь.

    • @koral197
      @koral197 4 ปีที่แล้ว

      typescript хорош. Но это костыль который перекрывает травмы (недостатки) javascript. Потому что, если бы их не было бы, то и typescript не нужно было создавать. Само посебе существование typescript говорит что javascript язык так себе.

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

      @@koral197 Так можно сказать о большинстве ЯП...

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

    Автор а вы вообще когда в последний раз на джаваскрипте кодили? В 2008? Там есть класы

    • @SerhiiNesterov
      @SerhiiNesterov 4 ปีที่แล้ว

      нет от слова совсем

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

    Javascript решает много асинхронных задач. Работа сервера и клиента в реалтайм режиме? js это топ решение. Это будущее веба. И любой питон саснет по скорости. Не нравится синтаксис установи TypeScript или CoffeScript. Установи Babel и пиши на самом последнем стандарте. И оно будет переконвертирован в es 5.

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

    Не можете создавать собственные классы с собственным поведением? Не совсем уловил мысль. Это как так?

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

    Эксперты, которых мы заслужили "ну а че он такой гибкий? Это не серьезно, ничего на этом не напишешь". В js полным-прлно проблем и их не озвучили

  • @АлексейАлексеевич-ш7ю
    @АлексейАлексеевич-ш7ю 5 ปีที่แล้ว +11

    Автору ролика предлагаю написать рест апи на жаве, пхп и ноде с экспрессом, после этого я думаю все вопросы отпадут.
    Вкусовщина да, для меня, например, джава самый уродливый язык что вообще существует, и к сожалению не помню кто из ученых это сказал: джаву придумали для людей, неспособных освоить плюсы, в конце 90 начале нулевых был огромный срач как в университетах так и у работодателей в сша по поводу этого ЯП и тех кто учился на КС в то время, хорошо что сейчас появился котлин, немного выравнивающий ситуацию. (Это чтобы спустить на землю жаверов, так как любой адекватный человек понимает, что каждый яп выполняет свою функцию)
    Я читал статью какого-то умника на хабре, для которого не существует ЯП без строгой типизации, и что типа жс поэтому говно, до многих просто не доходит, что даже применяя typescript или flow, жс это ДРУГОЙ язык, они пытаются писать на жс так же как будто они пишут на си++ или джаве, результат немного предсказуем.
    На третьей минуте автор говорит, что на жс можно писать простые вещи, добавлю, что на нем можно писать простые вещи ПРОСТО, что например на жабе не плодя миллиард уродских классов и инстансов всяких сделать будет невозможно.
    >Не можете создавать собственные классы с собственным поведением
    Какие такие супер классы в браузере может создать жава?
    Я очень даже рад, что джаваскрипт всё дальше и дальше отходит от общепринятого ООП и всё больше и больше в нем практикуется функциональный
    Ну и я не удивлен, что у них преподают ангуляр, так как при расцветающих реактах и вью писать на ангуляре (так же как и на джаве) это особый сорт говноедства, извините за мой французский и за мои пять копеек

    • @k3rber0s
      @k3rber0s 4 ปีที่แล้ว

      Какой самый большой проект на js по количеству строк в проме ты видел? Я знаю проект на java ~4 млн строк, успешно работает в проде, некоторые классы датируются 2008 годом

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

    Потешно смотриться, как на этом фоне Вы хвалите архитектурно плохой PHP. Потому что PHP не является конкурентом Java из-за низкого performance, а JS является?

    • @OlegTar
      @OlegTar 3 ปีที่แล้ว

      Js пока не является конкурентом Java

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

    А кто запрещает не пользоваться фреймворками? И как вообще расширение возможностей языка, сокращение количества кода и адаптация под конкретные нужды фреймворками может быть минусом?
    Хотя да, учить надо много, и наверно большинство программистов используют фреймворки, потому фреймворки учить нужно.
    Но все же, если бы это не было нужно и не было полезно, то никто бы фреймворки и js не юзал.
    Единственный минус js это производительность.

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

    ваше мнение о языке Go

    • @eleimt
      @eleimt 5 ปีที่แล้ว

      И тут Сергей просим)

  • @ИванСветлов-з1я
    @ИванСветлов-з1я 5 ปีที่แล้ว +5

    Все , Атписка) А на чем тогда прелоадеры крутить?)

  • @UFO26
    @UFO26 3 ปีที่แล้ว

    Всем два раза ку. Можно ли создать сайт в среде Microsoft visual studio со скриптами на C++? Я понимаю что это делается на PHP, JavaScript и т.д., но мне приспичило именно на С++.

    • @bernish
      @bernish 3 ปีที่แล้ว

      Можно но не нужно, всё с нуля придётся делать фреймворков то нет, а прирост скорости будет никакой, если хочется Сподобный язык лучше выберити С# там есть asp.net и на это есть спрос на рынке

    • @UFO26
      @UFO26 3 ปีที่แล้ว

      @@bernish Спасибо, неделю назад выбрал C#. Осваиваю на оконных приложениях, нарадоваться не могу если сравнивать с C++/CLI. Прям вспомнил начало 2000-х, когда я сидел на Delphi.

  • @dmitry.gashko
    @dmitry.gashko 5 ปีที่แล้ว +1

    Мне, в общем, нравится ваш канал. Но все же...
    Вы назвали 3 причины. Из них реальная только первая. Остальные две - совершенно не правда.
    2. Классы.
    Да, хоть в js и нет классов, но особой роли это не играет. На вид это самый обычный класс, хоть и без приватных/защищенный атрибутов (на самом деле уже с приватными, но пока это мало где поддерживается). Поэтому, да, приходиться использовать соглашения по именованию. Что минут.
    3. Фреймворки полностью меняющей язык
    А это я вообще не понял. Где это они меняют язык? Тот же jq (который правда не фреймворк) - это просто одна функция - $. Все. Это просто функция название которой состоит из 1 символа. В JS вообще нет никаких инструментом, что бы изменить что-то в самом языке. Вообще ничего. Поэтому любой код написанный на js - это код написанный на js. А фреймворк , библиотека - они могут поменять js ровно на столько, насколько это возможно в java.
    Поэтому этот пункт - чесно говоря полный бред) Вообще не ожидал такое услышать))
    Что такое "полностью меняют язык" - это с++. Я выдел решение алгоритмической задачки. Так вот там были переопределенны все конструкции языка. Но и там это, в принципе, допустимо - все же это спортивное программирование и там нужна скорость (написания). Но в этом плане с++ - пример отличный.
    1. Неподдерживаемость.
    А это да. Но в тоже время есть typescript. Поэтому все просто и гибко. Нужно что-то быстрое и простое - можно использовать js и не париться. Если что-то большое то можно использовать js и париться, либо использовать ts и не париться. Здесь и классы, и private/public и все что только нужно. Главное "any" не злоупотреблять.
    (плюс, интересная возможность - можно с конфиге сделать обязательными проверки на null. Получается, что-то типа Optional в java, только без лишних оберток).
    - - -
    А вообще не люблю, когда говорят плохо, про какие-то языки (во всяком случае, если это язык популярный).
    У всех языков есть плюсы и у всех языков есть минусы. Причем у каждого языка их очень много.
    Я считаю, что нужно быть гибче. Я как-то читал на хабре комментарии к статье о новых возможностях с++. И там было много тех, кто очень неганивно высказывались по этому поводу. Но дело в том, что все они были ветеранами с++, и не хотели принимать таких больших изменений. Но это не правильно. То что язык улучшается это всегда хорошо. А если нужна стабильность - никто не мешает просто не использовать новые возможности (а в том же js с самого начала поставили закон - что-бы не менялось, но всегда должен работать код написанный в прошлось. Хоть 10+ лет назад он был написан. Поэтому в js все изменения вообще не влияют на тех, кто их не использует).

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

    Все просто: докладчик возглавляет школу по изучению JAVA, поэтому и обсирает другие языки.

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

    Что в видео про ноду, что в видео про выбор ОСи, что в этом - один и тот же ментальный глюк: "для МОИХ задач можно обойтись без , поэтому я считаю что это - плохо и ВСЕМ не подходит"

  • @Pavel-yb2cz
    @Pavel-yb2cz 5 ปีที่แล้ว +7

    Да, полностью согласен, что ванильный js трудно поддерживается и писать на нем что то большое не стоит, но существует ts, который решает большую часть всех ваших проблем). В действительности, особенно при разработке чего-то большого, используется ts.

    • @СерегаВонг
      @СерегаВонг 5 ปีที่แล้ว +5

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

    • @Pavel-yb2cz
      @Pavel-yb2cz 5 ปีที่แล้ว +2

      @@СерегаВонг Ванильный js вполне оправдан в небольших проектах (особенно в тех, которые не нужно будет поддерживать в даленейшем). Ts же используется при написании того, что должно поддерживаться и расширяться. + используя ts вы получаете нормальную помощь от intelli sense (она способна помочь как новичкам, так и скилловому программисту который уже несколько часов подряд работает и потерял свою концентрацию). Так же в ts есть интерфейсы и другие штуки, которые удобно использовать (пришёл в js из c# и прекрасно знаю и зачем нужны интерфейсы, хотя существует утиная типизация, но все же...). И ещё немного интересных фактов о разработке на js.До появления ts в Google доходило то того, что работники в комментариях писали какого типа переменная (из-за того, что они уже переставал понимать что-либо в ванильном js).

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

    JavaScript - язык допотопный, архаичный, не современный, но без него не обойтись. Vue, Angular, React - хорошие инструменты для создания приложений, а JSON - сейчас доминирующий стандарт для HTTP запросов

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

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

  • @СерёгаСокольский
    @СерёгаСокольский 5 ปีที่แล้ว +2

    Ну ES5 синтаксис и ниже действительно многие не понимали или не принимали. С выходом в 2015 ES6 синтаксиса всё изменилось в лучшую сторону. Появились классы, модули, стрелочные функции, ограничения областей видимости переменных и прочее. На языке появилась возможность писать в ООП стиле. А про нишу согласен. UI интерфейсы SPA - это основное применение. Так сейчас почти все предпочитают SPA приложения с REST архитектурой и SSR, нежели классические сайтики.

  • @ДеловойПун
    @ДеловойПун 2 ปีที่แล้ว

    Бреед. Почему Вы JS судите без фреймворков и компиляторов.
    Вы бы еще сказали бы что ассемблер плохой язык и что на нем можно писать примитивные опросники в консольной строке, так как ассемблер не годится для написания и поддержки Word, Exclel.

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

    Окончание расставило все по местам чувак явно не понимает как оно работает.

  • @АхаАха-м1л
    @АхаАха-м1л 5 ปีที่แล้ว +2

    в будущем все понятия о которых вы говорите уйдут в прошлое, будет замена ООП и ФП, сейчас вы считаете типизацию полезной, но в будущем это может быть что то устаревшее. Программирование не сидит на месте. Что насчет JS, будем откровенны, ему альтернатив нет и неизвестно когда будет. Он развивается и появляются улучшенные версии(библиотеки и фреймворки) в которых устраняются недостатки нативного JS

    • @binikkolporn6792
      @binikkolporn6792 3 ปีที่แล้ว

      ооп это бред придуманный аутистом

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

    Только приступил к ознакомлению с этим языком, и возникли те же впечатления... На дворе 2020 год, и что нем сильно изменилось? Но есть другая проблема у новичка, который вынужден "пилить" front-end, как без него обойтись, ведь это единственный и неповторимый язык встроенный в каждый броузер?

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

      А чего с ним не так? Фреймворки для кого ?) Для фронт-энда существует много библиотек :)

  • @ВладиславЧичкан-ш9ь
    @ВладиславЧичкан-ш9ь 5 ปีที่แล้ว

    Как вы думаете, стоит ли переучиваться

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

    Красиво, хорошо и здорово на РНР пишется очень даже запросто))
    Главное желание и пряморукость.
    Ключевые слова abstract, extends, implements по идее ж с Java взяты. Когда читал паттерны, их описывали на Java, я спроходняка на РНР переводил, без особых трудностей.

    • @romanpuliyan2849
      @romanpuliyan2849 5 ปีที่แล้ว

      А вот JS это конечно тема особая. Я его готовить не умею, пытаюсь научится, но пока не понял, надо ли оно мне. С одной стороны, вся та жесть, которая есть в JS, меня всегда стороной обходила и я даже не знал, что в нем есть такое. С другой стороны, вроде и знать о существовании необычных приемов и особенностей полезно. Чем дальше разбираюсь, тем больше понимаю, что познать JS я смогу не скоро. Наверно из-за ненадобности знать его глубже, т.к. не использую в практике.. Здесь я имею ввиду, так сказать, ES5-
      А ES6, typescript это ж уже совсем другое дело.

    • @monsterbesel
      @monsterbesel 5 ปีที่แล้ว

      php написан на с++

    • @denisgorjunov
      @denisgorjunov 5 ปีที่แล้ว

      @@monsterbesel на Си.

    • @ЮрийКарпов-э3ч
      @ЮрийКарпов-э3ч 5 ปีที่แล้ว

      Php7 вообще в принципе далеко шагнул. И никто не запрещает использовать strict types. Плюс в режиме draft рассматривается вопрос с шаблонами. Так что скоро и пхп будет с++подобным.

    • @ДжонСноу-я8э
      @ДжонСноу-я8э 5 ปีที่แล้ว +1

      @@monsterbesel а компилятор java и jvm на чем по-твоему написаны??

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

    Ну так ангулар, Ву, реакт Итд делали как раз для таких как ты. Чтобы не боялись базы в виде прототов, замыканий и могли абстрагироваться немного от циклов ожидания событий и стеков вызовов, работая на любимом джава подобном языке)

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

    На JavaScript сейчас многин проекты разрабатывают и он развивается. Для строгой типизации придумали TypeScript, на замену node.js появился bun.js, который в десятки раз бытрее работает. И вообще удобно когда ты бэкенд-разработчик, то можешь без проблем разобраться во фронтенде, к примеру надо протестировать работау запроса на бэкенд, а фронтенд-разработчик занят, не ждешь его, а сам делаешь правки и проверяешь

  • @АнтонМусієнко-о6ы
    @АнтонМусієнко-о6ы 4 ปีที่แล้ว +1

    Интересно почему для js-фреймворков настолько характерно создание собственных компиляторов или трансляторов. С моей точки зрения это как раз из-за недостаточной гибкости языка, мало написать какой-то DSL, нужно непременно, чтобы со своим компилятором и сборщиком пакетов. Второй минус - неисправленные родовые травмы с null и undefined и иже. Третий минус - новые фичи далеко не всегда способствуют читаемости кода. До нашествия компиляторов любил JS больше чем PHP, пускай сорняк, зато лаконичный ))

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

    jQuery - не фрейворк. Это библиотека.

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

    Ага, ну конечно, не можно создавать классы, может сначало нужно разобраться, а потом делать ролик? Или типо я на него посмотрел, он мне не понравелся, поэтому язык бэээ

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

    Вот только рынок с вами не согласен, и все чаще новые проекты стартуют на ноде и go а java остается лишь на легаси)
    Это что касается бека, про фронт молчу

    • @causasgwirionedd6271
      @causasgwirionedd6271 3 ปีที่แล้ว

      это уже вопрос о предпочтениях в выборе между новым проектом и легаси

    • @ВладиславИващенко-ъ7з
      @ВладиславИващенко-ъ7з 3 ปีที่แล้ว

      @@causasgwirionedd6271 так какой язык учить Java или JS ?я уже запутался )

    • @causasgwirionedd6271
      @causasgwirionedd6271 3 ปีที่แล้ว

      @@ВладиславИващенко-ъ7з выбирай пхп) простота и возможность работать во фронтенде как у жс, наличие опытных старичков и старых проектов как у джавы

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

    Если ООП это про классы(привет Алан Кей), то у автора Джава головного мозга.
    Мнение обо всем и ни о чем.

  • @СергейСтульнев-й7п
    @СергейСтульнев-й7п 4 ปีที่แล้ว +1

    Вообще javascript, уже сформировался вплоть до того, что на нём можно создавать классы, как, например, в php. В JS теперь есть set - теры и get - теры, и если я ещё не забыл, есть модификаторы доступа. Единственный минус этого языка, он не имеет никакого доступа к базам данных. Это было предусмотрено, как безопасность языка, по скольку он до сих пор остаётся клиентским языком с открытым кодом. Язык php по скольку он серверный язык, то его исходников в браузере увидеть не получится.
    Вывод. На PHP делаются сайты, точнее, делается программная часть движка. На JavaScript мы придаём странице динамику, то есть при перезагрузке на чистом PHP страница будет мерцать, что не всегда хорошо. Поэтому в силу вступает JavaScript и Ajax, и тогда страница не будет перезагружаться целиком, будут перезагружаться только небольшие элементы на странице, и то, этого не видно будет визуально.
    Кстати, Sergey, сделайте видео о сравнении С++ и Assembler.

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

      Не язык не имеет доступа к БД, а браузер.
      Язык тут не причем ;)
      А на JS можно и серверную часть писать - есть хороший фреймворк Nest.js, например

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

    Сделайте пожалуйста видео про выбор версии jdk.
    Нужно ли, и с какой целью, использовать последние версии jdk?
    Как выбирать версию для нового проекта?
    Правилен ли подход - навсегда остановиться на бесплатной версии 1.8, доказавшей свою беспроблемность?

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

    Два утверждения: "JS не может создавать собственные классы" и "jQuery (frameworks) могут изменить язык до неузнаваемости" уныло и безнадёжно противоречат друг другу.
    Кстати, C++ со своей перегрузкой операторов (как унарных, так и бинарных) тоже может изменить язык до неузнаваемости.
    Мало того, директивы препроцессора C могут сделать то же самое. Самый, пожалуй, яркий пример - техника setjmp - longjmp. Я не знаю пока более изящного изврата в программировании вообще.
    Просто Java - довольо примитивный, я бы даже сказал, нарочито кастрированый язык по сравнению с C/C++. Все положено в жертву идеи "шоп меньше ошибались".
    B C/C++ совершить ошибку еще легче, чем в JS. А реально серъезные вещи делают именно там.

    • @Lapshism
      @Lapshism 3 ปีที่แล้ว

      @@andykras Убогими могут быть только кодировщики, а не средства разработки. Тем более средства, давно доказавшие свою эффективность.

    • @Lapshism
      @Lapshism 3 ปีที่แล้ว

      ​@@andykras Есть ое наблюдение: кто умеет - делает, кто не умеет - скулит. Квалифицированному челу вообще по фиг на чём писать.

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

    Почти со всем согласен, но... Что-то я не замечаю существенной разницы между нативным js и jquery

    • @alexeygumenyuk8510
      @alexeygumenyuk8510 2 ปีที่แล้ว

      Лол, я как во время написания этого комментария, так и до сего дня ничего масштабного на жабаскрипте не писал... Как и на любом другом япе... Так с чем я согласен?)))

  • @Прикольноепроектноепрограммиро

    Любой язык в чем-то хорош и плох. И в таком вопросе НЕЛЬЗЯ НЕ БЫТЬ субъективным. Собственно, вы это и сказали)

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

    Kotlin ?!?!??!))) Сергей, пожалуйста выскажитесь

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

      Упрощённый вид языка java

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

      @Eugene Kiruhantsev гугл говорит, что разработка под Андроид в скором времени будет в первую очередь на котлине. Тоесть они будут свою нейтивную АПИ выкатывать именно на нем.

    • @dmitry.gashko
      @dmitry.gashko 5 ปีที่แล้ว +2

      Kotlin-logo.svg
      Designed by JetBrains
      Developer JetBrains and open-source contributors
      First appeared 2011

    • @АлександрКарачёв-я3э
      @АлександрКарачёв-я3э 5 ปีที่แล้ว

      @@LobanovSpace Чего? Что значит упрощенный? В каком месте?

    • @Victorius-ua
      @Victorius-ua 5 ปีที่แล้ว +2

      Я не Сергей, но выскажусь. Котлин фактически убил Скалу. Есть вероятность, что он убьет Джаву. Через лет так 5-10. А в сфере Андроид приложений совсем скоро - через пару лет

  • @fasimpls5661
    @fasimpls5661 4 ปีที่แล้ว

    У всех вокруг спрашиваю,но так внятного ответа получить не могу.Какой язык лучше начать учить как первый для взлома(не в плохих целях,не для взлома пентагона и банков).Вроде нравится java(всё хвалят всё хорошо,да и плюс можно приложения на смартфон писать),но на нём никто не взламывает.Какой язык выбрать???Css, html, C++, JavaScript ???Подскажите пожалуйста.

    • @Kirillissimus
      @Kirillissimus 3 ปีที่แล้ว

      Если есть конкретный проект - надо выбирать под него. Если просто поиграться и научиться программировать - тогда надо брать тот, который знает и хвалит ваш знакомый программист, будете его потом пинать. Если знакомого програмиста нет - тогда берите Object Pascal (Delphi / FreePascal+Lazarus), потом если будете пробовать много разных языков то о потраченном на него времени не пожалеете.

    • @fasimpls5661
      @fasimpls5661 3 ปีที่แล้ว

      @@Kirillissimus хорошо, спасибо большое 👍

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

    Сергей: почему JavaScript мне не нравится
    Комментарии: я найду тебя по IP

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

    это как это jQuery меняет JavaScript если jQuery это всего лишь набор функций написанных на самом JavaScript . Ну да ладно, снимайте дальше, как минимум вы прикольно рассказываете

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

    Один я смотрю из-за "Здравствуйте, мои дорогие"? :3

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

      Я смотрю из-за тихих звуков в области кресла

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

      Изза конца "Люблю вас"

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

    Сергей, добрый день. Очень хотелось бы получить ответ на вопрос очень частного характера. А может кто-то еще подскажет. Очень крупная компания предлагает бесплатные курсы по java web, а для тех кто успешно прошел курсы (по итогу выполнения тех.задания) последующая стажировка и возможное трудоустройство. У меня так товарищ с таких же курсов уже почти до синьора дослужился у них. Однако до курса у них требования наличия уже некоторых знаний, а именно: знание объектно-ориентированного программирования; знание баз данных;
    знание алгоритмизации и структур данных. С подачи все того же товарища начал самостоятельно изучать программирование разумеется с java. Понимание ООП уже есть и вроде как неплохое. Также циклы, конструкторы и даже static все очень понятно. И почему то меня это настораживает :) Учусь по общедоступным видеокурсам, параллельно Эккель и текстовые курсы. Курсы в компании начинаются в сентябре. Сам вопрос: есть ли у меня шанс успеть быть готовым исходя из требований и что можно мне посоветовать делать или не делать, добавить или убрать, при таком подходе? Заранее огромное спасибо за ответ, а остальным огромное извините, если дочитали и пожалели об этом.

    • @borschetsky
      @borschetsky 5 ปีที่แล้ว

      Andrey Pylyptiy скажите, как компания называется ?! И где находится?

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

      @@borschetsky epam же) находится вроде как везде)

    • @borschetsky
      @borschetsky 5 ปีที่แล้ว

      Andrey Pylyptiy да но не везде есть эта стажировка.
      Я в Софии живу, тут скажем мягко есть связи в Ипаме.
      Но даже с помощью этих связей не удалось попасть. У них жесткий договор с одной академией, которая 2 раза в год выпускает 30-50 человек. И они на стажировку забирают 15-20.
      В моем случае ипамовская стажировка мне не интересна.
      По новой слушать про парадигмы ООП, SOLID, и чем отличаются линейные структы от не линейных как-то не хочется.
      Их Тех Лид посмотрел мой гитхаб, и в один голос с управляющим сказали что на стажировке тебе делать нечего. По рекомендовали найти молодую компанию менее корпоративную. Чтобы больше времени могли уделять развитию молодых специалистов.
      А ты про какой Ипам говоришь?! Киевский?!

    • @pylyptiy
      @pylyptiy 5 ปีที่แล้ว

      @@borschetsky Карагандинский) и там курс уже нацелен на web, но набор на него тоже на конкурсной основе.

    • @alexnovik6223
      @alexnovik6223 5 ปีที่แล้ว

      Пусть меня закидают камнями, но первую работу надо брать какую дают и при этом стучаться во все двери. Если берут на практику - идти. Если предлагают работу - идти. Если отказывают, то попросить краткий фидбек. На старте всегда нужно много энергии тратить на поиск первого места. А так же ВАЖНО всегда читать полностью требования к кандидатам - обычно там вся нужная информация есть, т.к. разные фирмы выставляют разные требования. Еще хорошо немного ознакомится с деятельностью компании и на интервью задать вопрос типа: судя по отзывам у вас тут ..... (указать что именно) и мне именно это интересно и хотелось бы подробнее узнать про .... Думаю эйчары оценят вашу заинтересованность. А вообще Java на уровень хотя бы beginner изучить надо минимум 6-9 месяцев. Потому что часто думаешь, что вроде все понимаешь, а на техническом интервью оказывается, что не можешь ответить почти ни на один технический вопрос.

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

    Все равно, что сказать: китайский - плохой язык, потому что я не умею его готовить. Можно проходить мимо.

  • @SeregaSpiridonov17
    @SeregaSpiridonov17 4 ปีที่แล้ว

    Я не вижу перспективы работы во фронтенде по нескольким причинам: люди чаще и чаще используют мобильные устройства, а не ноутбуки и десктопы, а используя мобильные устройства, они используют приложения, а не мобильную версию веб-сайта - по этой причине браузер глобально теряет свою аудиторию в пользу мобильных приложений; я проживаю в США и тут море различных буткампов и все, как один, дают своим студентом один и тот же материал: HTML, CSS, Javascript с реактом, а там дальше и Nodejs для полного счастья, чтобы сделать из тебя фул-стек разработчика за 3 месяца, заработав по 12000 - 17000 долларов с каждого студента за курс и реально нет курсов, которые бы обучали людей по iOS разработке, хотя Apple тут доминирует над Андроидом, а тут еще и другая проблема: когда вся активность уходит в мобильные приложения, компании не будут инвестировать в улучшение фронтенда - сайт главное, чтобы был и работал - без реакта тут можно прекрасно обойтись, а вот без серверного приложения, на котором держится вся компания - тут никак, тут надо поддерживать и что-то улучшать в зависимости от бизнес-процессов и вакансий по Java тут море и требования ни такие жесткие, как на вакансию по Javascript. Получается такая картина, что рынок фронтенда съеживается, а буткампы поставляют все новых и новых программистов во фронтенд; мобильная разработка - это очень перспективное направление, там большой рынок и нет такой давки, как в вебе.

  • @ted_res
    @ted_res 5 ปีที่แล้ว

    Нет строгой типизации, рефакторинг не представляется возможным, максимум, что можно - это обильно обмазать тестами. В своих проектах стараюсь по возможности генерировать весь js при сборке через annotation processing, так появляется хоть какая-то целостность и связь с серверной частью. Одно время использовал GWT и производные, они снимают вопрос целостности, конечно, но появляется миллион новых проблем. Кстати, подумалось тут, что Котлин умеет и java, и js, подумаю, может его получится для клиента собирать, было бы шикарно, на самом деле. Пробовал Котлин, он прекрасен, в частности делегатами и минималистичным синтаксисом, единственное - компилируется полдня, но это вроде должна решить модульность.