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

Поділитися
Вставка
  • Опубліковано 13 кві 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

КОМЕНТАРІ • 81

  • @mikhalpalych
    @mikhalpalych Місяць тому +21

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

    • @equim7363
      @equim7363 Місяць тому +5

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

    • @danielluko7635
      @danielluko7635 Місяць тому +2

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

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

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

    • @maxhermany
      @maxhermany 11 днів тому

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

  • @SurenEnfiajyan
    @SurenEnfiajyan Місяць тому +21

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

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

      Почему?

    • @SurenEnfiajyan
      @SurenEnfiajyan Місяць тому +10

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

    • @smith-dev
      @smith-dev Місяць тому +1

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

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

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

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

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

  • @HEX_CAT
    @HEX_CAT Місяць тому +1

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

  • @zergon321
    @zergon321 Місяць тому +2

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

  • @biovawan
    @biovawan Місяць тому +3

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

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

    Да ,вы правы!

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

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

  • @user-ij6tq2dn7y
    @user-ij6tq2dn7y Місяць тому +1

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

  • @smith-dev
    @smith-dev Місяць тому +2

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

  • @VladimirBattle-li1pw
    @VladimirBattle-li1pw Місяць тому

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

  • @AZaytsev90
    @AZaytsev90 Місяць тому +2

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

    • @klirmio21
      @klirmio21 Місяць тому +3

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

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

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

    • @klirmio21
      @klirmio21 Місяць тому +2

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

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

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

  • @SergioKornelius
    @SergioKornelius День тому

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

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

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

  • @trash2trash
    @trash2trash 26 днів тому

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

  • @user-gv1cq4jn1g
    @user-gv1cq4jn1g Місяць тому

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

  • @Akira-zv6pt
    @Akira-zv6pt Місяць тому +5

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

    • @biovawan
      @biovawan Місяць тому +1

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

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

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

  • @dmitriyzakharov3696
    @dmitriyzakharov3696 Місяць тому +1

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

    • @kirills4631
      @kirills4631 28 днів тому

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

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

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

  • @MaximKopylov
    @MaximKopylov Місяць тому +2

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

    • @dashakoval3534
      @dashakoval3534 Місяць тому +1

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

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

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

  • @virnus1
    @virnus1 23 дні тому

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

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

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

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

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

  • @frusen_sol
    @frusen_sol Місяць тому +1

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

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

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

  • @romandeveloper7720
    @romandeveloper7720 Місяць тому +1

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

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

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

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

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

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

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

  • @joymusicstudio1
    @joymusicstudio1 Місяць тому +3

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

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

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

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

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

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

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

  • @ugin-nb4sy
    @ugin-nb4sy Місяць тому

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

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

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

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

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

  • @ashimov1970
    @ashimov1970 11 днів тому

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

  • @benzed1618
    @benzed1618 Місяць тому +1

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

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

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

  • @osad4enko
    @osad4enko 22 дні тому

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

  • @Torbjorn-ph7rt
    @Torbjorn-ph7rt Місяць тому

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

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

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

    • @user-yw9wx4lv2w
      @user-yw9wx4lv2w Місяць тому

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

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

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

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

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

    • @user-yw9wx4lv2w
      @user-yw9wx4lv2w Місяць тому

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

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

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

  • @Torbjorn-ph7rt
    @Torbjorn-ph7rt Місяць тому

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

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

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

  • @25x8.
    @25x8. Місяць тому

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

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

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

    • @user-yw9wx4lv2w
      @user-yw9wx4lv2w Місяць тому

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

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

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