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

2024 ж. 13 Сәу.
19 270 Рет қаралды

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

Пікірлер
  • Не опять учить новое, а, о, что-то новое, чтобы выучить

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

      @equim7363@equim7363Ай бұрын
    • так говорят только те, у кого помимо js нет никаких фреймворков

      @danielluko7635@danielluko7635Ай бұрын
    • Задрот! Найди наконец-то девушку

      @ubobcat@ubobcat28 күн бұрын
    • Хватит уже что-то учить, надо жить ☝️🥸

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

    @SurenEnfiajyan@SurenEnfiajyanАй бұрын
    • Почему?

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

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

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

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

      @biovawan@biovawanАй бұрын
  • Спасибо за классное видео❤❤❤🎉🎉🎉

    @HEX_CAT@HEX_CATАй бұрын
  • "My job is to keep our code running while other packages are changing theirs" (C) Interview with Senior JS Developer

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

    @biovawan@biovawanАй бұрын
  • Да ,вы правы!

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

    @smith-dev@smith-devАй бұрын
  • Согласен на 100%

    @VladimirBattle-li1pw@VladimirBattle-li1pwАй бұрын
  • Геймекьюб лучший подарок вы большой молодец!

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

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

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

    @Akira-zv6pt@Akira-zv6ptАй бұрын
    • Что изменилось?

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

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

    @AZaytsev90@AZaytsev90Ай бұрын
    • Так они не существуют, их еще не добавили

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

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

      @klirmio21@klirmio21Ай бұрын
  • Мне нехватает pipe оператора. Предложиои давно, висит до сих пор 😢

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

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

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

      @kirills4631@kirills463125 күн бұрын
  • Переменная, которая не меняется - это же круто. Ждем функции, которые не функционируют)

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

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

    @virnus1@virnus120 күн бұрын
  • Пацан в конце видео полностью кооопия Даша 😂😂 Как две капли

    @MaximKopylov@MaximKopylovАй бұрын
    • ну на Мишу тоже похож! )

      @dashakoval3534@dashakoval353429 күн бұрын
  • Миша за константы и против переменных)

    @ram_bayer@ram_bayer28 күн бұрын
  • Хочется стабильности то надо в джаву переходить 😅

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

    @aleksandr_anp@aleksandr_anpАй бұрын
    • yield'ы

      @user-no6il5pi8n@user-no6il5pi8n8 күн бұрын
  • Ретрогейминг форевер

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

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

      @daiske2867@daiske2867Ай бұрын
    • @@daiske2867 ну вот, что-то новое опять будет)

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

    @ashimov1970@ashimov19708 күн бұрын
  • Давно смотрю твои видео но как-то так случилось что никогда не видел твоё аутро, спасибо 💙💛

    @kenjz8413@kenjz8413Ай бұрын
  • Вы просто стареете Михаил

    @konstantinhagelgans3837@konstantinhagelgans3837Ай бұрын
  • используем Preact Signals для управления состоянием в Реакт приложении, супер удобно

    @frusen_sol@frusen_solАй бұрын
    • Используем angular signals. Супер удобно

      @biovawan@biovawanАй бұрын
  • Не Ву, а Вьюи это произношение с француского Vue !!

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

    @sergeyfilatov3027@sergeyfilatov3027Ай бұрын
  • ЖИРНАЯ РЫБА МЕДЛЕНО ПРОГРЕСИРУЕТ МЕЛКАЯ РЫБА БЫСТРЕЕ ПРОГРЕСИРУЕТ В ОБЛАКО ИИ СЛЕДУЮЩИЙ ЛВЛ

    @benzed1618@benzed1618Ай бұрын
  • А Даша это Жена?

    @joymusicstudio1@joymusicstudio1Ай бұрын
    • да)

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

    @AlexanderBorshak@AlexanderBorshakАй бұрын
  • "Хочется стабильности" - стареешь Миша)

    @artyomnomnom@artyomnomnomАй бұрын
    • Веб обычно обратно совместим, ну то есть то что поддерживают браузеры нативно.

      @SurenEnfiajyan@SurenEnfiajyanАй бұрын
  • Это какой то изрвращенный rxjs на минималках

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

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

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

      @user-yw9wx4lv2w@user-yw9wx4lv2wАй бұрын
  • Сомнительно, но окей.

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

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

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

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

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

    @25x8.@25x8.Ай бұрын
  • Соглашусь с Мишей, хочется стабильности, а не постоянно обучаться)))

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

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

      @user-yw9wx4lv2w@user-yw9wx4lv2wАй бұрын
  • Javascript давно надо полностью переписать и половину выкинуть.

    @DreamingDolphing@DreamingDolphingАй бұрын
KZhead