Я создал приложение на 10 разных JavaScript фреймворках. Какой лучше?

Поділитися
Вставка
  • Опубліковано 26 чер 2024
  • Подпишись на мой телеграм. Там же и исходники на GitHub: t.me/js_by_vladilen/594
    Узнай как стать Middle Frontend в бесплатном марафоне: bit.ly/404UYEV
    10 разных JavaScript фреймворков
    Ходит мнение, что каждый день во фронте появляется новый JS фреймворк и от части это правда. Я же собрал 9 самых актуальных инструментов в 2023 и сделал обзор на каждый, объяснив их основы.
    В видео я написал одно и тоже приложение 10 разными способами и в меню этого ролика:
    - React
    - Vue
    - Angular
    - Svelte
    - Solid
    - Alpine
    - Stencil
    - Qwik (очень необычный фрейм)
    - Lit
    Кайфанул от изучения инструментов и практики кодинга. Вам - обзор на актуальные технологии во фронте
    Inspired by:
    • I built the same app 1...
    Таймкоды:
    00:00 - О чем видео?
    01:06 - 1. JavaScript
    03:51 - 2. React
    07:14 - 3. Vue JS
    10:08 - 4. Angular
    15:20 - 5. Svelte
    17:50 - 6. SolidJS
    21:04 - 7. AlpineJS
    23:36 - 8. Stencil JS
    27:22 - 9. Qwik JS
    32:28 - 10. LitJS

КОМЕНТАРІ • 278

  • @VladilenMinin
    @VladilenMinin  Рік тому +22

    Ходит мнение, что каждый день во фронте появляется новый JS фреймворк и от части это правда. Я же собрал 9 самых актуальных инструментов в 2023 и сделал этот обзор, объяснив их основы. Заодно кайфанул от изучение новых и от актуализации кодерских умений. Лайк если зашло видео 🤟
    Еще подпишитесь на мой ТГ, а то вдруг с UA-cam снесут канал 😅. Там же найдете исходники на GitHub
    t.me/js_by_vladilen/594
    P.S. Если хочешь узнать как стать крутым мидлом, то я записал марафон, где за 2 дня можно получить овердофига полезного контента абсолютно бесплатно, которого так структурированно нет в открытом доступе:
    bit.ly/404UYEV

    • @nikitaermolenko7813
      @nikitaermolenko7813 Рік тому

      @Владилен Минин, привет, ты писал CRM на вью 2. Даа, вспомнил я старые вещи, что поделать)
      Сложно это написать на вью 3? То есть, часто придется отклоняться от твоих действий в уроках, много отличий?

    • @VladilenMinin
      @VladilenMinin  Рік тому

      @@nikitaermolenko7813 Процентов на 30 отличается

    • @sashaanohin90
      @sashaanohin90 Рік тому

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

  • @jameskim4274
    @jameskim4274 Рік тому +18

    Как приятно было смотреть на твой чистый js код. Обычно когда сравнивают фреймворки, в подобных видео как обычный js пишут полную лапшу, чтобы сказать: смотрите какой он страшный. А у тебя все по полочкам, прям кайфанул

  • @levdau
    @levdau Рік тому +4

    Наконец-то появилось что-то про AlpineJS! Спасибо

  • @MrRiseful
    @MrRiseful Рік тому +21

    Владилен очень хорошо знает Angular, и то как он написал столько простое приложение, задействовав все возможные сущности меня лично порадовало.
    Плюс хочется также подчеркнуть, что если такой подход кажется сложным и вычурным - стоит ещё раз напомнить, что Angular предоставляет архитектуру и как сказал автор, такое делегирование решает самую главную проблему - масштабируемость приложения. Помимо этого сама абстаркция Angular позволяет писать, по моему мнению, очень чистый, читабельный код, чего мне не хватает ни в каком другом фреймворке.
    P.S. Влад, поставь пожалуйста расширение для подсветски синтаксиса Angular (vscode - Angular Language Service), если в будущем будут видео по Angular. Спасибо за видео!

    • @ojgenn
      @ojgenn Рік тому +2

      на этот счет, конечно, есть разные мнения

    • @AndrejsKrilovs
      @AndrejsKrilovs Рік тому +3

      Тоже понравилась реализация на Angular. 👍 Самый понятный фреймворк для тех, кто пришёл с backend разработки.

    • @test-user-123
      @test-user-123 Рік тому

      А что было сложного показано?

    • @AndrejsKrilovs
      @AndrejsKrilovs Рік тому

      Не было ничего сложного.
      Даже зашла идея с написанием собственного pipe. Взял себе на вооружение эту фишку

  • @dimusss
    @dimusss Рік тому

    Спасибо большое за отличный ролик! Отдельное спасибо, что начали с ванильного js, чтобы было очевидно, какое количество кода добавляют абстракции фреймворков поверх основной логики. Из нового для себя обратил внимание на qwik - интересная концепция подгружать даже всякие мелочи в процессе работы.
    И еще хотел поблагодарить за то, что в качестве примера взяли более приближенный к реальности кейс (загрузка данных с сервера, фильтрация, работа с текстовым импутом), а не надоевший, мне кажется, уже всем TODO лист :)

  • @koreikin
    @koreikin Рік тому +4

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

  • @denis_minimal
    @denis_minimal Рік тому

    Кайфанул. Было очень интересно. Самому взять и потыкать эти фреймворки/библиотеки не хватает времени. Спасибо Владилен. Видео пушка)

  • @ruslanundefined2242
    @ruslanundefined2242 Рік тому +1

    Пару дней назад видел в твоем github новый репозиторий и ждал выхода видео) спасибо за полезную информацию)

  • @skryonline5825
    @skryonline5825 Рік тому +26

    Отличное сравнение. Можно было еще input и список в отдельные компоненты вывести и в этих фрэймворков покозать как у них обстоят дела с стэйтом между компонентами. И потом сравнить сколько всего строк кода, вес и перформанс. Вот тогда можно будет увидеть существенную разницу. А для себя уже давно сделал выбор - в пользу Svelte

    • @pavelhamanovich4951
      @pavelhamanovich4951 Рік тому +1

      Ещё туда добавить роутинг с параметрами, разной лейзи фигни, работу с формами и валидацией, ну и до кучи какой-нибудь темплейтной магии, вроде темплейт аутлетов и т.д

    • @zloyded1337
      @zloyded1337 Рік тому

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

  • @vanmihaylovich
    @vanmihaylovich Рік тому +4

    Владлен, однозначно тема очень важная. Благодарю за множественное сравнение решений.
    С вниманием изучу каждое.

  • @max_mgtow
    @max_mgtow Рік тому +1

    Привет Владилен 🤝
    Буквально позавчера лазил по твоему гитхабу и увидел недавний код))
    Ждал этого видео)
    Спасибо 🔥👍

  • @user-yg8hn4it3c
    @user-yg8hn4it3c Рік тому

    Очень крутой и наглядный споосб показать разные фреймворки. Вот бы ещё такой же по бэку:)

  • @denroot7785
    @denroot7785 Рік тому

    Крутое сравнение, хотелось бы увидеть ещё сравнение скорости работы в каждом из фреймворков)

  • @braind_bible4845
    @braind_bible4845 Рік тому +2

    Владилен, подскажи пожалуйста, в примере Vue ты используешь вычисляемое свойство, а вот в React ты используешь useRef с дополнительным useEffect.
    Получается у тебя:
    2 списка данных
    Дополнительный useEffect
    Можно ведь было бы использовать useMemo как вычисляемое свойство, завязанное на одном списке и input и рендерить уже его.
    Почему был выбран вариант именно с useRef и useEffect? Так лучше по производительности или просто чтоб показать как это делается по-другому? 🙂

  • @magicckiller9643
    @magicckiller9643 Рік тому

    Прикольный такой челлендж !! 😄
    Побольше подобных видео, порадовало
    Владилен, Вы прекрасно постарались 👍

  • @arsenyhlebuschkin3681
    @arsenyhlebuschkin3681 Рік тому

    Отличное сравнение! Хорошо бы найти тоже самое по фреймовркам по perl!

  • @orloffdev
    @orloffdev 8 місяців тому

    Приятно смотреть на чистый js, во всех смыслах )

  • @backender-workdays
    @backender-workdays Рік тому

    Спасибо, отличное видео
    В своих видео начал с самых азов, а дальше буду давать более глубокие знания, только по бэк-энду.
    Безумно приятно и интересно смотреть, черпаю опыт и в фронт-энд, и в подаче материла :)

  • @NikolayErmolenko
    @NikolayErmolenko Рік тому +1

    Очень интересно. Хотелось бы узнать про динамический роутинг. В случае, когда структура приложения на момент загрузки ещё не известна. Как это можно сделать на разных фреймворках?

  • @NoCommentRUS
    @NoCommentRUS Рік тому

    Лайк. Хотел бы увидеть сравнения и тесты

  • @vladimirlevin6799
    @vladimirlevin6799 Рік тому

    Спасибо. интересно!

  • @user-rm2im6wx2b
    @user-rm2im6wx2b Рік тому

    Спасибо за обзор, хотелось бы поподробнее о Svelte.

  • @tyrexsiv8157
    @tyrexsiv8157 Рік тому +1

    Спасибо за интересный обзор. По данному примеру приложения- чистый JS рулит :), все проще и понятнее. Я понимаю, что 100500 фреймворков придумали не просто так. Мне, как новичку, хотелось бы увидеть какие проблемы решает каждый конкретный фреймворк, какие у него киллер-фичи. Может быть на более сложном примере и поменьше фреймворков за раз...

  • @bingobijo3698
    @bingobijo3698 Рік тому +1

    Спасибо большое вам Владилен если бы обновили курс Vue JS на Udemy то было бы вообще здорово

  • @nth-prog8562
    @nth-prog8562 Рік тому +1

    Мне как человека, который не может работать без хорошей архитектуры - angular просто must have. Спасибо владилен за обзор

  • @romashka7519
    @romashka7519 Рік тому +4

    Интересное видео, спасибо Владилен!

    • @makkapoya
      @makkapoya Рік тому +6

      37 минутное видео: выходит
      каждый второй коммент под ним через 2 минуты: отличное видео, спасибо ))

    • @VladilenMinin
      @VladilenMinin  Рік тому +4

      @@makkapoya Во-первых это единственный такой коммент. Во-вторых, предположу, что человек оценил по названию ролика - что тема ему интересна. Он ничего не сказал, что посмотрел и все круто

  • @edmondhamilton995
    @edmondhamilton995 Рік тому +10

    Самого главного в видео нет - а именно выводов автора относительно фреймворков, их плюсов и минусов в сравнении друг с другом.
    Желательно было бы добавить ещё краткую информацию о распространенности фреймворков и их доли на софтверном рынке.
    В общем, есть куда стремиться )))

    • @-dubok-
      @-dubok- Рік тому

      Вывод прост: реакт - говно 🤣

    • @edmondhamilton995
      @edmondhamilton995 Рік тому +1

      @@alexlightweight Да я не про навязывание, а про сравнительный анализ. Чтобы понятно было, какой фреймворк в чём силен, а в чём слаб.

    • @jetsker6388
      @jetsker6388 Рік тому

      @@edmondhamilton995это надо глубже копать, но аудитории и так зайдет

  • @Mehabeha
    @Mehabeha Рік тому

    Привет, предлагаю снять продолжение и реализовать доп фишки поиска, которые помогут раскрыть различия, когда задача доводится до реального продакшена и как код приложений плсле этого усложнится. 1. Функция возврата поиска отрабатывает секунду. 2. Во время поиска отображать loader. 3. Добавить debounce в пол секунды, т.к нет смысла грузить сервер пока юзер вводит текст. 4. Если получается так, что дебонс не поможет и сервер будет выполнять 2 запроса параллельно, то выполнить самый последний, а более старые игнорировать (как switchMap в rxjs).

  • @zatochiSiberian
    @zatochiSiberian Рік тому +22

    Спасибо. Жаль только нет анализа проектов, по размеру и скорости. Было бы интересно.

    • @VladilenMinin
      @VladilenMinin  Рік тому +19

      Потенциальная тема на новый ролик)

    • @tribesman82
      @tribesman82 Рік тому +1

      Судя по всему свелт будет одним из самых быстрых,на выходе чистый js

    • @max_mgtow
      @max_mgtow Рік тому

      ​@@tribesman82 но его пока мало где применяют

    • @tribesman82
      @tribesman82 Рік тому

      @@max_mgtow согласен, изучаю его на будущее. Сразу в составе svelte kit

    • @-rsrg
      @-rsrg Рік тому +1

      @@tribesman82 скорее всего solid. Есть сравнение оверхеда (по отношению к Vanilla) выходного бандла после компиляции для различных фреймворков на главной странице solidjs.

  • @AndreyAdadurov
    @AndreyAdadurov Рік тому

    Qwik впервые узнал о существовании такого фреймворка 😮 Идея в нем заложена крутая, особенно актуально если пользователь с древним смартфоном. И само видео крутое, приложение пусть хоть и простенькое, но на 10 разных стеках, такого в русскоязычном Ютубе мне пока не попадалось.

  • @tackesi
    @tackesi Рік тому

    vue, svelte прикольные, а вообще чистый js то крут!

  • @user-ni9tf5yr6m
    @user-ni9tf5yr6m Рік тому

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

  • @anzay911
    @anzay911 Рік тому

    Хотелось бы посмотреть на кое-что за пределами JS/TS - использование WebAssembly. Может, даже с бенчмарками.

  • @user-pe4wq2dv7q
    @user-pe4wq2dv7q Рік тому

    Интересный контент. Спасибо

  • @witseid
    @witseid Рік тому

    Что за шрифт вы используете?

  • @andrew.kovalenko
    @andrew.kovalenko Рік тому

    Соглашусь, Alpine действительно выглядит идеальный для подобного рода простых приложений
    Stencil стал интересным открытием между React и Angular
    ну и понравился Qwik своей идеологией и реализацией

  • @lessons3141
    @lessons3141 Рік тому

    Vue конечно же топчик!
    Angular как будто китайский язык, что-то понять там ну очень сложно было, и расхотелось в принципе лезть туда.
    Приятно удивил Alpine, не знал про него ничего , но этот подход показался простым и логичным!
    P.S. Возможно будет туториал по Vue StoreFront и Vue script setup + nuxt 3

  • @mrnikcet3419
    @mrnikcet3419 Рік тому

    Владилен, покажи где-нибудь (постом в телеге, например) какие расширения для VS Code'а ты используешь, пожалуйста. Интересно посмотреть.
    Спасибо)

    • @VladilenMinin
      @VladilenMinin  Рік тому +1

      Есть шорт на канале с этим списком

  • @PavelKotliarov
    @PavelKotliarov Рік тому

    Блин очень интересно. И очень плохо понятно. Требую ролики, в которых можно будет все эти фреймворки поделить на пару тройку категорий и с примерами(если возможно) рассказать о их отличиях, в плане разработки, сложности, доступности инфраструктуры вокруг них. И условно. В свелт нет такого количества юай библиотек как на реакте, но на нем она тебе и не так нужны, потому что все очень легко пишется и наоборот. В общем тема интересная. Контент годный, дайте еще!)))

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

    Спасибо за это видео

  • @GregKurman
    @GregKurman Рік тому

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

  • @elliemeyer9164
    @elliemeyer9164 Рік тому

    Сказать честно, Я ожидал ещё какой-то ытог (Conclusion) к таковым сравнениям, что где лучше, или более приглянулось ..
    А так, да, весьма объёмно и познавательно, gracias ))

  • @MrShevrin
    @MrShevrin Рік тому

    мне как ангулярщику, конечно понятнее всего ангуляр)), мне кажется автор слишком усложнил объяснение, что там и как устроено - возможно, сложится впечатление что куча всего там нужно прописать руками, но большинство из этого генерируется фреймворком автоматически при создании нового приложения (структура, корневые модули и компоненты, методы жизненного цикла, импорты, метод рендера в корне index.html)...остальное при создании сущностей за кодера делает cli, например. Но за трикс с пайпом однозначно лайк!

  • @mtvspec
    @mtvspec Рік тому

    Сразу начал с Angular 2. React почему-то не зашел, но сейчас думаю освоить и его тоже. Выглядит с одной стороны проще, но с другой стороны будто надо все самому придумывать. В Angular есть много готовых решений, которые можно использовать сразу из коробки, это конечно означает, что надо будет все это сидеть и изучать, но после изучения это здорово облегчает жизнь. С React я так понимаю надо будет придумывать самому как это должно будет работать. Если сравнивать с Angular, то как будет например выглядеть работа с формами в React? Валидация, отображение разных сообщений, связь между разными контролами, и в целом с формой, ее состояние, состояние каждого отдельного контрола, вложенные формы и массивы форм, возможности в части переиспользования синхронных и асинхронных валидаторов. Я понимаю, что в принципе, всë можно сделать и на чистом JS, и на любом из этих фреймворков.

    • @rodionme
      @rodionme Рік тому

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

    • @helplrewerse2925
      @helplrewerse2925 Рік тому

      Ничего придумывать не надо у реакт куча либ выбирай любую и юзай. Хочешь строгости и какой-то архитектуры смотри на next это фреймворк для реакт.

    • @Valentin_I
      @Valentin_I Рік тому

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

  • @viktordev1218
    @viktordev1218 Рік тому +8

    Познавательный ролик👍 У новичков, по-любому, возникнет вопрос: "нафига все эти фреймворки, если на vanila js сделать проще всего")

    • @5cent
      @5cent Рік тому +1

      +

    • @Alexgru18
      @Alexgru18 Рік тому

      +

    • @ojgenn
      @ojgenn Рік тому

      тудуху да. а потом придется изобретать велосипед

  • @daniilrozyev
    @daniilrozyev Рік тому

    Владилен планируешь когда-нибудь сделать видео о парсинге на чистом JS?

  • @user-vj7ec1ms4d
    @user-vj7ec1ms4d Рік тому +1

    Привет! Круто делаешь, много черпал из твоих видосов)
    теперь пришел с критикой)
    По поводу реализации на реакте. А что если не нужно следить в useEffect'e то, что ты ввел в инпуте. Зачем менять users? напиши лучше const filteredUsers = useMemo(()=>{},[input]). И рендери отфильтрованные. Нет?

    • @user-wm2pf4fo3f
      @user-wm2pf4fo3f Рік тому

      Не понял из твоего объяснения, в чём именно проблема. На всякий случай: ты точно понял, что users - это как раз уже отфильтрованные юзеры? Кстати, соглашусь, что именование тут не самое идеальное)

    • @user-vj7ec1ms4d
      @user-vj7ec1ms4d Рік тому

      @@user-wm2pf4fo3f в подходе проблема , я считаю ) в users не должны быть отфильтрованные юзеры
      Дальше должен лежать стейт с условиями фильтрации
      И на основе юзеров и данных для фильтрации должно высчитывается новое значение

  • @aleksey6340
    @aleksey6340 Рік тому +1

    Для Angular в pipe в условии прописано users.length === 0. Там скорее всего должно быть value.length

    • @VladilenMinin
      @VladilenMinin  Рік тому

      На самом деле лишняя проверка вообще. Я потом уже заметил

  • @JesseJames-mh5kb
    @JesseJames-mh5kb Рік тому +1

    Властилен на высоте!

  • @pavelhamanovich4951
    @pavelhamanovich4951 Рік тому +3

    Ангуляр таким тяжеловесным выглядит просто по тем причинам, потому что автор решил использовать весь его функционал. Если использовать стенделон компонент, темплейт описать вместе с компонентом в одном файле, не использовать пайпы и сервис, то там кода с гулькин нос останется)
    Кстати, в Ангуляре нет сигналов еще, которые есть во всех других фреймворках

    • @VladilenMinin
      @VladilenMinin  Рік тому +4

      Я думал зафигачать нативный фетч в компонент, но потом подумал, что есть клиент, его по-хорошему в сервис надо засунуть и... получил что получил. Зато по феншую ;D

    • @pavelhamanovich4951
      @pavelhamanovich4951 Рік тому +4

      @@VladilenMinin Что большинство новичков и пугает, мол mental model слишком сложная. Зато придя в кровавый энтерпрайз на ангуляре не надо тратить много времени на понимание архитектуры - он везде одинаковый)

  • @johnnybanana946
    @johnnybanana946 Рік тому +1

    Когда открыл для себя канал Fireship 😁
    Без обид надеюсь. Содержание и подача сильно отличаются, но заметно, что идеи подглядел (прошлые видео про технологии за 1 минуту и это).
    P.S. Закрыл форточку и не душню больше, увидел в описании "inspired by" и ссылку на оригинальный ролик

  • @vuu3art
    @vuu3art Рік тому

    опаздал на год, но тоже неплохо

  • @kotik2400
    @kotik2400 Рік тому

    сделай след. видео - Обзор нововведений в TypeScript 5.0

    • @VladilenMinin
      @VladilenMinin  Рік тому +3

      Непохое видео снял Антон из PurpleSchool

  • @abboss.b9935
    @abboss.b9935 Рік тому +1

    Angular 🔥

  • @EnergoIT
    @EnergoIT Рік тому +1

    Мне понравился AlpineJS, можно больше видео на него Владилен?

    • @-dubok-
      @-dubok- Рік тому

      Да, специально для вас сейчас начнёт фигачить!

  • @user-wv5wj7sz2e
    @user-wv5wj7sz2e Рік тому

    Самый понятный вариант это на чистом js. Да и отлажиаться удобнее... По крайней мере это мой выбор.

  • @Vebust
    @Vebust Рік тому

    Всегда использую next для своих проектов. Но как я понял, ты даёшь понять что next максимально не популярен в проде?

  • @27cobalt60
    @27cobalt60 Рік тому +10

    интересно было бы замерить скорость работы каждого решения

    • @user-cb6qu4qo1p
      @user-cb6qu4qo1p Рік тому +3

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

    • @27cobalt60
      @27cobalt60 Рік тому

      @@user-cb6qu4qo1p Понятное дело, что не совсем корректно так сравнивать скорость, но просто интереса ради посмотреть на эти милисекунды

  • @user-yf3ec9ml1j
    @user-yf3ec9ml1j Рік тому

    В SolidJS для запросов на сервер лучше использовать Resource

  • @moscowtv5767
    @moscowtv5767 Рік тому

    А зачем во вьюшном примере onMounted?

  • @assalamualeykum1028
    @assalamualeykum1028 Рік тому

    Выбор пал на React, Vue и Svelte. Теперь нужно выбрать один из них

    • @arealxd
      @arealxd Рік тому +2

      Vue советую

    • @-dubok-
      @-dubok- Рік тому

      По скорости и простоте Svelte лучше всего. Vue и React уже устарели со своим Virtual Dom и тяжёлыми рантаймами.

  • @strela3
    @strela3 Рік тому

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

  • @vovergg
    @vovergg Рік тому

    Больше всего понравился SolidJS.)

  • @user-xg3er7dw8y
    @user-xg3er7dw8y Рік тому +2

    10 слишком красивая цифра... 3 фреймворка пришлось самому придумать 😆😆😆

  • @lexus884
    @lexus884 Рік тому +1

    так какой лучше? будет ли сравнительное видео?

    • @__kawaii
      @__kawaii Рік тому

      Лучше всего солид, но не пали фишку быдлу

  • @AndriiChykulai
    @AndriiChykulai Рік тому +1

    А будет еще отдельный курс по React?

    • @VladilenMinin
      @VladilenMinin  Рік тому

      Есть актуальный с TS в подсказках

  • @olegkat4841
    @olegkat4841 Рік тому

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

    • @VladilenMinin
      @VladilenMinin  Рік тому

      Плюс минус одно и тоже делают. Есть небольшие различия под разные специфики проектов

  • @Dimonina
    @Dimonina Рік тому

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

    • @ZaurmagRu
      @ZaurmagRu Рік тому

      Если фильтровать данные на сервере то событие input нужно пропустить через debounce. Небольшое дополнение...

    • @Dimonina
      @Dimonina Рік тому

      @@ZaurmagRu denounce не отменит запрос при вводе след символа, а интересно как раз посмотреть как в разных фоеймворках этот race condition отруливается

    • @ZaurmagRu
      @ZaurmagRu Рік тому

      @@Dimonina Вообще пока набираете текст быстро запрос не идет, как только останавливаетесь дольше времени задержки - улетает запрос всего текста. Так работает debounce...

    • @Dimonina
      @Dimonina Рік тому

      @@ZaurmagRu все верно. Но возможна ситуация, когда предыдущий запрос ещё выполняется, и приходит новый символ даже после дебаунса. В любом случае нужно отменить предыдущий запрос. Дебаунс тут не поможет.

  • @funsionxd4589
    @funsionxd4589 Рік тому +2

    Точно не видел у Fireship. А вообще в заимствовании не вижу ничего плохого, особенно в классных адаптациях, таких как этот видик)

    • @VladilenMinin
      @VladilenMinin  Рік тому

      Фаершипа уважаю, вдохновлялся названием его ролика. Ссылочку оставил в описании

  • @ode2877
    @ode2877 Рік тому

    даешь прод!

  • @DarkzarichV2
    @DarkzarichV2 Рік тому +1

    Вдохновился видео от Fireship? :D Чуть-чуть разный набор фреймворков, но всё остальное очень похоже)

    • @VladilenMinin
      @VladilenMinin  Рік тому +2

      Да, я даже добавил это в описании)

    • @DarkzarichV2
      @DarkzarichV2 Рік тому +1

      @@VladilenMinin А, и правда, ну, это мы уважаем 💪

  • @unet900
    @unet900 Рік тому

    На 10 фреймворках ах ты негодяй )

    • @VladilenMinin
      @VladilenMinin  Рік тому

      ахах ну почему негодяй сразу ;D

  • @user-uk5tj3qn5q
    @user-uk5tj3qn5q Рік тому

    Litjs это набор хелперов для создания "web components"?

    • @dimondurak
      @dimondurak Рік тому

      нет. Lit это либа для создания стандартных веб-компонент, которая добавляет декларативную шаблонизацию, стилизацию с учётом специфики ShadowDOM и реактивные свойства.
      Признаться честно, объяснение про Lit разочаровало. Получилось крайне поверхностно, к тому же всё свалено в кучу, да ещё и перепутано. Например, connectedCalback() - это не функция, а метод жизненного цикла элемента (из стандарта), а вот метод render() - как раз то, что добавляет базовый класc LitElement (т.е. либа). Кроме того, html это не функция, а тегированная шаблонная строка (и да, я знаю, что фактически это функция, однако для понимания проще воспринимать html`как строку из ES5` )

  • @madarasan0
    @madarasan0 Рік тому +1

    Ребят, почему так сложно то, только закончил с основами JS и почти ничего не понятно, даже в файле про фактический JS и от этого большое уныние наступает, вроде человек все детально объясняет и толково, но используются какие то слишком продвинутые технологии

  • @user-xk6zl4vo7x
    @user-xk6zl4vo7x Рік тому +1

    Когда знаком с angular и vue но не с самым популярным Реактом

  • @sa1ntman331
    @sa1ntman331 Рік тому

    Прошу прощение, комментарий не по теме, на превью, когда видео не запустил, перепутал Владилена Минина с автоблогером Стасом Асафьевым. Все успехов в изучении!)

  • @fitter2boss72
    @fitter2boss72 Рік тому

    Я ожидал сравнение перфоманца, размеры файлов и т.д.

  • @Shadzen
    @Shadzen Рік тому

    По поводу Qwik - а ничего что такое количество запросов на сервер это по сути как DDOS атака?

    • @VladilenMinin
      @VladilenMinin  Рік тому

      Ну если это какой то NGINX то в целом и общем все равно. Но да, мне тоже интересно на сколько живая концепция в проде

    • @Valentin_I
      @Valentin_I Рік тому

      @@VladilenMinin дохрена промисов жрут память

  • @I248
    @I248 Рік тому

    когда хотябы 2к картинка будет
    ?

  • @Xron-TV
    @Xron-TV Рік тому

    А звук где

  • @user-xk6zl4vo7x
    @user-xk6zl4vo7x Рік тому

    Почему vs code а не webstorm как обычно?

  • @denixsg
    @denixsg Рік тому +1

    Владилен забыл сказать что сделал это с помощью ChatGPT )))

  • @maximkiselev1554
    @maximkiselev1554 Рік тому +1

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

  • @arturmollaiev5015
    @arturmollaiev5015 7 місяців тому

    1. ALL_USERS не константа, чтоб в таком формате его прописывать
    2. ALL_USERS undefined в начале, а должен быть инициализирован с пустым массивом так как апи может кинуть ошибку (которую ты не ловишь, кстати) и input change будет вызывать filter у undefined.
    3. Почему юзер обозначен как “i “при переборе через filter? i - index, номер итерации. Bad naming
    4. Если у тебя есть метод start, который все начинает, так запихни подписку на инпут туда же, а то нелогично
    Это по JavaScript примеру. Дальше не смотрел

  • @nikitos2442
    @nikitos2442 Рік тому +2

    Владилен, очень важный вопрос, сколько ты уже находишься в фронтенд разработке и как быстро ты выучивал новый фреймворк?
    Ты работал в команиях или большую часть на себя?

    • @VladilenMinin
      @VladilenMinin  Рік тому +4

      больше 10 лет в разработке
      новый фрейм даже не надо учить - просто читаю доку и пишу
      7 лет в компаниях, последние 3 года на себя

    • @nikitos2442
      @nikitos2442 Рік тому

      @@VladilenMinin Я неспроста спрашиваю. Видел вакансии, которые хотят все фреймвоки и опыта от 1-3 года. Это типа джун-универсалный солдат с соответствующей зарплатой.

    • @VladilenMinin
      @VladilenMinin  Рік тому +1

      @@nikitos2442 Да это бред. Научись на них писать и количество лет/месяцев не важно

    • @bebeto123g
      @bebeto123g Рік тому +3

      ​@@VladilenMinin, оно и видно как неважно, в Реакте делать в useEffect реакцию на изменение состояния, в котором меняешь другое состояние, явный признак "профи", хотя я, к слову, джун в Реакте :Ъ Уж простите за сарказм, но опыт везде важен, как и в чистом JS понимание азов, работа с объектами как ссылками, иммутабельность. В реакте так же важно понимать для чего нужна мемоизация и когда ее стоит использовать, а когда нет, почему в зависимости useEffect лучше не передавать объекты, и самое по моему мнению важное, глядя на г***окод людей, писавших приложения в компании до меня, это для чего нужна композиция при написании структуры компонента, особенно если речь идет о модулях.

    • @pavelhamanovich4951
      @pavelhamanovich4951 Рік тому +1

      @@nikitos2442 Зачем учить фреймворки, если надо учить и понимать концепции. Как ты заметил, 6 из 10 фреймворков в видео - одно и тоже, только названия функций разные. Если в двух словах, то концепции можно сказать следующие
      - Темплейта и ее язык описания (JSX, полунативный HTML, другое)
      - Байндинг переменных к темплейте
      - Обработчики событий
      - Жизненный цикл приложения и темплейт
      - Реактивность или как фреймворк понимает что данные обновились
      Все остальное это фичи этих фреймворков, что их и отличает

  • @marcitrixie
    @marcitrixie Рік тому

    не понятно, что вы думаете по этим фреймворкам? какой вам больше понравился? выделили хотябы топ 3

    • @VladilenMinin
      @VladilenMinin  Рік тому +8

      Мой личный топ: Angular, Svelte, Vue

  • @narek1771
    @narek1771 Рік тому

    Lit как по мне слаб так как autocomplete нету из за строчного синтаксиса, долго печатать, а время то дорогое

  • @Oleksandr_Yukhno
    @Oleksandr_Yukhno Рік тому

    Я в этом иало разбираюсь, но со стороны кажеться что фрейворки плодят много ненужных сущностей. Намного проще HTML

  • @kirillpodolinniy309
    @kirillpodolinniy309 Рік тому +1

    Ответ к вопросу на видео: Лучше тот, на котором есть вакансии.

  • @parnasmi
    @parnasmi Рік тому

    Было очень интересно. Не всегда находиш для себя время чтобы весь этот зоопарк пощупат..

  • @user-io6jp1up9c
    @user-io6jp1up9c 8 місяців тому

    Тимлид ушел в отпуск на 2 недели
    Также я когда он вышел: 00:00

  • @ojgenn
    @ojgenn Рік тому +20

    смотрел исполнение на ангуляре. плакал

    • @sameng4912
      @sameng4912 Рік тому

      Почему плакал, в каком смысле?)
      Я новичок . Ещё ничего не понимаю

    • @zhoramc
      @zhoramc Рік тому

      ну как уже писали, на ангуляре можно было это сделать куда проще

    • @zhoramc
      @zhoramc Рік тому +3

      @@sameng4912 думаю классическое "ангуляр говно, много, сложно и не нужно, ооп отстой"

    • @ojgenn
      @ojgenn Рік тому

      @@sameng4912 oninit там не нужен. и тем более переприсвоение значения в нем. это из того, отчего в принципе рыдание начинается

    • @ojgenn
      @ojgenn Рік тому

      @@zhoramc не угадал, конечно

  • @reinmaan
    @reinmaan 6 місяців тому

    Мне кажется или на чистом получился самый лаконичный код?

  • @zohnannor
    @zohnannor Рік тому

    Альпайн* :)

  • @mifaress
    @mifaress Рік тому +1

    Не душнила, действительно интересно:
    Зачем тут 5:50, внутри useEffect используешь дополнительную функцию, если логику можно было просто прописать внутри useEffect?

    • @batm1x
      @batm1x Рік тому

      Ну типа изолировать эту логику в async обёртку

    • @shakapaker
      @shakapaker Рік тому

      А как еще писать async await в useEffect? Callback в useEffect не может быть асинхронным

    • @mifaress
      @mifaress Рік тому

      @@shakapaker в таком случае не лучше ли просто через then написать?

    • @mifaress
      @mifaress Рік тому

      @@batm1x она и так изолирована (в самом useEffect)

    • @shakapaker
      @shakapaker Рік тому

      ​@@mifaress а чем хуже написать в отдельной функции?

  • @samuraiset59
    @samuraiset59 6 місяців тому

    Вот по этому куча легких сайтов на легких фреймах. А на ангуларе лучше энтерпрайз.

  • @mrerikBRO
    @mrerikBRO Рік тому

    после ul.innerHTML = html можно выключать...

    • @Valentin_I
      @Valentin_I Рік тому

      Думаешь в name предадут ?

  • @Bring_You_Up
    @Bring_You_Up 11 місяців тому

    хотелось бы услышать какое-то вывод

  • @yurarudenko7609
    @yurarudenko7609 Рік тому +1

    Почему есть столько фреймворков, которые судя по их описанию шустрее реакта, но при этом все равно реакт это наиболее используемый фреймворк?

    • @user-jt2dd2dn8b
      @user-jt2dd2dn8b Рік тому

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

  • @notrlt
    @notrlt 9 місяців тому

    где-то я это уже видел...
    fireship???