Опять учить новое? Сигналы (signals) в JavaScript

Sdílet
Vložit
  • čas přidán 13. 04. 2024
  • Javascript - язык программирования, который постоянно меняется. Многим это не нравится потому, что необходимо все время что-то учить. Вот теперь появилось предложение добавить в javascript нативные сигналы.
    НЕТ ВОЙНЕ!
    Выразить благодарность
    ko-fi.com/larchanka
    boosty.to/larchanka
    yoomoney.ru/to/410011886858328
    BTC: 127J5x79L9bb7T4jiYJ2U7jHNDLXEx4kT3
    USDT (TRC20): TWRQit8o1JJGWjAph3DZFysygUxSwqiq9Q
    TON: UQBDiFGDTLpp1zWLefv0LnH9TbEeUIcPSoO5uDNwhzktKP33
    Как я стал программистом
    • КАК Я СТАЛ ПРОГРАММИСТОМ
    Как я переехал в Европу
    • Как я переехал в Европу
    Стрим: Карьера программиста
    • Карьера программиста: ...
    VPN, который я использую
    get.surfshark.net/SH1Wy
    ➡️ Сайт: i.mobila.name/xT
    ➡️ Instagram: i.mobila.name/yp
    ➡️ Twitter: i.mobila.name/Ua
    ➡️ Telegram: i.mobila.name/b7d
    👉🏻 Больше влогов здесь:
    #larchankavlog #larchanka
    👉🏻 Ежедневные влоги:
    #larchankadaily
    👉🏻 Чем я снимаю:
    ➡️ iPhone 14 Pro
    ➡️ Еще одна камера: DJi Osmo Action
    ➡️ Еще одна камера: Sony DSC-WX500
    Музыка:
    Fictional Character - Gregory David
    Run for Cover - Matt Large

Komentáře • 82

  • @SurenEnfiajyan
    @SurenEnfiajyan Před měsícem +22

    Пока это всего лишь proposal. Многие такие proposal-ы даже закрыли. Я лично скептично отношусь к этой фиче.

    • @biovawan
      @biovawan Před měsícem

      Почему?

    • @SurenEnfiajyan
      @SurenEnfiajyan Před měsícem +10

      @@biovawan Имеешь ввиду мой скепсис? Я лично считаю, что это, во-первых, делает неявные вещи под капотом (кэширование и менеджмент зависимостей). Это создает вероятность выстрелить себе в ногу и создавать трудно отлавливаемые и отлаживаемые баги. Во-вторых, стейт менеджмент может быть специфичен для каждого фреймворка, и по мне, эта фича не очень универсальна. Даже если это нативно работает быстрее, не значит что надо просто так впихнуть все в язык, превращая ее в свалку.

    • @smith-dev
      @smith-dev Před měsícem +1

      @@SurenEnfiajyan это буквально делают для фреймворков.

    • @SurenEnfiajyan
      @SurenEnfiajyan Před měsícem

      @@smith-dev Знаю, в стандарт они хотят впихнуть всю эту сложность в натив. Просто стейт менеджемент, хотя и распространенная штука, она довольно специфическая, и может быть гораздо сложнее, чем этот стандарт предлагает. Например в Ангуляре RxJS со всеми его премудростями, ChangeDetectorRef и ChangeDetectionStrategy. Про остальные молчу. Создать стей манеджмент на все случаи жизни врядли получится.

    • @biovawan
      @biovawan Před měsícem

      ​@@SurenEnfiajyan Для начала, никто никого не заставляет использовать сигналы. Всё добровольно ;)
      * Неявные вещи: оч даже всё понятно, что откуда и куда присваивается. Будет пример, сможет предметно обсудить. Кэш обновляется функцией `set(...)` и всё, состояние изменено.
      * Выстрелть себе в ногу: сколько программирую с angular и сигналами, пока всё цело XD. Тут можно, конечно, свести к тому, что, мол, малый проект и т.п. Будут примеры, сможем предметно обсудить.
      * Фича не универсальна: слишком абстрактно. Как мы, профи, знаем, всё зависит от задачи; нет "серебряной пули".
      * [...] не значит что надо просто так впихнуть все в язык [...]: давай по порядку. Для чего смешивать тёплое с мягким? Если фича работает быстро, почему ей нельзя существоввать? Каким образом быстродействующий API JS превращяет JS в свалку? Надеюсь ты понимаешь, что любой функционал тестируется и только тогда добавляется в движок. Ах да, тёплое быстродействие, мягкое - свалка.
      Буду рад прочесть более детальную аргументацию ))
      Успехов в изучении JS

  • @HEX_CAT
    @HEX_CAT Před měsícem +1

    Спасибо за классное видео❤❤❤🎉🎉🎉

  • @mikhalpalych
    @mikhalpalych Před měsícem +21

    Не опять учить новое, а, о, что-то новое, чтобы выучить

    • @equim7363
      @equim7363 Před měsícem +6

      Да, давайте заниматься бессмысленной тратой времени

    • @danielluko7635
      @danielluko7635 Před měsícem +2

      так говорят только те, у кого помимо js нет никаких фреймворков

    • @ubobcat
      @ubobcat Před měsícem

      Задрот! Найди наконец-то девушку

    • @maxhermany
      @maxhermany Před 29 dny

      Хватит уже что-то учить, надо жить ☝️🥸

  • @zergon321
    @zergon321 Před měsícem +2

    "My job is to keep our code running while other packages are changing theirs" (C) Interview with Senior JS Developer

  • @biovawan
    @biovawan Před měsícem +3

    4:39 это не смешивание кода, а предоставление инструментария. Для профи нет проблем освоить еще один API. Расширение API происходит из нужды программистов. Кажется что JS сравнивается с другими языками, которые на рынке уже многие десятилетия. Чтобы и JS "устаканился", он так же должен пройти путь "взросления". У меня ещё возникло ощущение, что нынешние начинающие хотят за раз всё и сразу, и стать сеньёром. Не бывает такого. Наберитесь терпения ;) Упорство и труд всё перетрут.
    5:10 в чем проявляется кардинальное изменение? Разве код написанный 15 лет назад перестал работать? Это эволюция языка и обогащение функционалом.

  • @Endru1994
    @Endru1994 Před měsícem

    Да ,вы правы!

  • @user-ij6tq2dn7y
    @user-ij6tq2dn7y Před měsícem +1

    Переменная, которая не меняется - это же круто. Ждем функции, которые не функционируют)

  • @smith-dev
    @smith-dev Před měsícem +2

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

  • @VladimirBattle-li1pw
    @VladimirBattle-li1pw Před měsícem

    Согласен на 100%

  • @AZaytsev90
    @AZaytsev90 Před měsícem +2

    Прикольно. А я даже не знал, что вообще существуют сигналы

    • @klirmio21
      @klirmio21 Před měsícem +3

      Так они не существуют, их еще не добавили

    • @q3articus
      @q3articus Před měsícem

      @@klirmio21 что за бред, в Ангуляр фреймворке например они еще полгода назад появились.

    • @klirmio21
      @klirmio21 Před měsícem +2

      @@q3articus так я тебе не за ангуляр, а за нативный primitive в JS, про который он в этом видео и говорит)

  • @dandyhorsse
    @dandyhorsse Před měsícem

    Геймекьюб лучший подарок
    вы большой молодец!

  • @snatvb
    @snatvb Před měsícem

    Мне нехватает pipe оператора. Предложиои давно, висит до сих пор 😢

  • @Akira-zv6pt
    @Akira-zv6pt Před měsícem +5

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

    • @biovawan
      @biovawan Před měsícem +1

      Что изменилось?

    • @dizzivoneverec2737
      @dizzivoneverec2737 Před měsícem

      ​@@biovawanто что голова сидит 1/3 видоса дома, потом 2/3 на улице в парке и добивает все в машине, да ?

  • @user-gv1cq4jn1g
    @user-gv1cq4jn1g Před měsícem

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

  • @ashm_tech
    @ashm_tech Před měsícem

    Миша, пожалуйста подскажи стоит ли углубиться в fullstack или лучше углубляться в бэк? Для трудоустройства в ЕС/США компаниях

  • @dmitriyzakharov3696
    @dmitriyzakharov3696 Před měsícem +1

    "Эволюция в сторону увеличения производительности мне нравится больше" - так вот сигналы поэтому и появились) а про "стабильность" можно забыть)
    P. S. я юзаю сигналы в проде и пропозал скорее для реализации фреймворками нежели для обычного использования

    • @kirills4631
      @kirills4631 Před měsícem

      Да, все равно над сигналами будут обертки с доп функционалом в виде либ и стейт-менеджеров. Вообще 90% того что принимают в proposal лоббируют для реализаций инструментов по спеке в интересах компаний-"ментейнеров", а не для применения при разработке интерфейсов.

  • @funkytapir
    @funkytapir Před měsícem

    Тоже соглашусь. То что сейчас делают с изменением Swift в сторону Tasks мне плакать хочется...
    "Перемен требуют наши сердца"

  • @trash2trash
    @trash2trash Před měsícem

    Миша, ведь реактивное программирование было всегда в десктоп приложениях... просто есть реактивность (two-way bind на десктопе) на автоматизированную и ручную.

  • @MaximKopylov
    @MaximKopylov Před měsícem +2

    Пацан в конце видео полностью кооопия Даша 😂😂 Как две капли

    • @dashakoval3534
      @dashakoval3534 Před měsícem +1

      ну на Мишу тоже похож! )

  • @SergioKornelius
    @SergioKornelius Před 18 dny

    концепция сигналов: Ленивая реакивность

  • @ram_bayer
    @ram_bayer Před měsícem

    Миша за константы и против переменных)

  • @romandeveloper7720
    @romandeveloper7720 Před měsícem +1

    Слушай, так, по-моему, все языки перенимают какие-то штуки крутые из других языков)
    А насчет того, что стабильности - ну тут вопрос развития. Пусть в нашем мире хоть один язык такой будет, где бурное развитие непрерывное, ведущее к чему-то новому и прорывному. ДЖС уже сделал прорывы в проге, не за горами новые, надеюсь. Когда-нибудь JS переборщит конкретно, мб да, но это даст дорогу новым языкам и технологиям, которые учтут предыдущий печальный опыт

    • @daiske2867
      @daiske2867 Před měsícem

      да только в этом уравнении есть 1 ошибка, js не умрет так как он постоянно меняется и постоянно в себе вмещает не вмещаемое все просто прийдет к тому, что js будет языко-ориентированным языком, создавая для каждого проекта свой dsl исключая при этом фактор фреймворков

    • @romandeveloper7720
      @romandeveloper7720 Před měsícem

      @@daiske2867 ну вот, что-то новое опять будет)

  • @dever4eg
    @dever4eg Před měsícem

    Хочется стабильности то надо в джаву переходить 😅

  • @aleksandr_anp
    @aleksandr_anp Před měsícem

    1:31 генераторы елды? 😮 Это реально какой-то асинк-авэйт...)))

  • @crypto_octocat
    @crypto_octocat Před měsícem

    Ретрогейминг форевер

  • @joymusicstudio1
    @joymusicstudio1 Před měsícem +3

    А Даша это Жена?

  • @konstantinhagelgans3837
    @konstantinhagelgans3837 Před měsícem

    Вы просто стареете Михаил

  • @virnus1
    @virnus1 Před měsícem

    То чувсвто когда видишь превью на ролик в ютюбе типа: "теперь такая то фича в JS дольше не нужна появилась новая более крутая", а ты ещё даже не успел приступить к изучению той устаревшей.

  • @ugin-nb4sy
    @ugin-nb4sy Před měsícem

    Не Ву, а Вьюи это произношение с француского Vue !!

  • @sergeyfilatov3027
    @sergeyfilatov3027 Před měsícem

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

  • @kenjz8413
    @kenjz8413 Před měsícem

    Давно смотрю твои видео но как-то так случилось что никогда не видел твоё аутро, спасибо 💙💛

  • @frusen_sol
    @frusen_sol Před měsícem +1

    используем Preact Signals для управления состоянием в Реакт приложении, супер удобно

    • @biovawan
      @biovawan Před měsícem

      Используем angular signals. Супер удобно

  • @artyomnomnom
    @artyomnomnom Před měsícem

    "Хочется стабильности" - стареешь Миша)

    • @SurenEnfiajyan
      @SurenEnfiajyan Před měsícem

      Веб обычно обратно совместим, ну то есть то что поддерживают браузеры нативно.

  • @ashimov1970
    @ashimov1970 Před 29 dny

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

  • @benzed1618
    @benzed1618 Před měsícem +1

    ЖИРНАЯ РЫБА МЕДЛЕНО ПРОГРЕСИРУЕТ
    МЕЛКАЯ РЫБА БЫСТРЕЕ ПРОГРЕСИРУЕТ В ОБЛАКО ИИ
    СЛЕДУЮЩИЙ ЛВЛ

  • @AlexanderBorshak
    @AlexanderBorshak Před měsícem

    Зачем постоянно тянуть в ядро языка то, что можно сделать в виде библиотеки? Тем более что "сигналы" подозрительно похожи на классический шаблон Pub/Sub...

  • @maximevtahov2360
    @maximevtahov2360 Před měsícem

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

    • @daiske2867
      @daiske2867 Před měsícem

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

    • @user-yw9wx4lv2w
      @user-yw9wx4lv2w Před měsícem

      @@daiske2867 "а в чем принципиальная разница этих сигналов от уже существующих проксей" - а что у них общего? Это же вообще о разном

  • @EdwardNorthwind
    @EdwardNorthwind Před měsícem

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

    • @user-yw9wx4lv2w
      @user-yw9wx4lv2w Před měsícem

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

  • @Torbjorn-ph7rt
    @Torbjorn-ph7rt Před měsícem

    Сомнительно, но окей.

  • @osad4enko
    @osad4enko Před měsícem

    Это какой то изрвращенный rxjs на минималках

  • @404Negative
    @404Negative Před 10 dny

    продемонстрированный код с сигналами выглядит как мусор. надеюсь этот пропоссал не пойдёт на следую стадию

  • @almit9198
    @almit9198 Před měsícem

    Накину на вентилятор: жаваскрипт - самая большая ошибка в области программирования, которую могли совершить программисты. (В других языках тоже не без этого, но оно локальное: например отступы в питоне вместо скобок; или безумный синтаксис в перле, или $this-> в php и пр.) Но вот жаваскрипт - это всё одна большая ошибка, примерно совершённая в момент, когда он из нетскейпа переполз в гугл руки. И сейчас жаваскрипт выглядит как почта гугла - без слёз никак...

  • @Torbjorn-ph7rt
    @Torbjorn-ph7rt Před měsícem

    У вас код не читаемый - табы вместо пробелов.
    В то же время зоопарк фреймворков: ...

  • @mikep541
    @mikep541 Před měsícem

    Соглашусь с Мишей, хочется стабильности, а не постоянно обучаться)))

  • @adamburke4496
    @adamburke4496 Před měsícem

    Надо сваливать с фронта куда-нибудь, где каждый месяц "новый убийца всего" не выходит и не нужно всем срочно нужно его бежать учить

    • @user-yw9wx4lv2w
      @user-yw9wx4lv2w Před měsícem

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

  • @25x8.
    @25x8. Před měsícem

    Про сигналы с 3:00, по существу ничего
    Видео пустое, дизлайк

  • @DreamingDolphing
    @DreamingDolphing Před měsícem

    Javascript давно надо полностью переписать и половину выкинуть.