TGViewer
Андруша пишет код Андруша пишет код @xavescor_code · 1.33K subscribers
Post #142 1.35K
Почему реакт идёт куда-то не туда pt3

- React Server Сomponents(RSC)
- React Compiler(RC)
- Hooks Вы тута

Хуки на момент своего выхода были очень крутым решением. Они позволили упростить композицию и типизацию в наших приложениях. Это позволило очень хорошо упростить нашу кодовую базу. Но у всего есть цена. Появились правила хуков, которые никак не отражены в нашем языке. И ты должен помнить, что хуки всегда должны вызываться в том же порядке и ты не можешь в один момент в компоненте выполнить 3 хука, а потом 5 хуков. У тебя как минимум в дев режиме реакт сломается.

Ну и эти ограничения вроде как не смертельны. В ангуляре и вью, к примеру, всё точно так же. Ты обязан описать всю логику в компоненте. И она не может появиться из неоткуда. За одним сверхважным исключением. ОЧЕНЬ ВАЖНЫМ. Хуки опираются на ререндер в своей работе. И это кардинально меняет картину разработки. Да, ты можешь обмазаться оптимизациями типа RC и подобного, но главное сделать ты не можешь: ты не можешь не выполнять весь код, который у тебя написан.

Почему это критично? Всё просто: потому что мы пишем библиотеки, которые решают задачу. Но почти никогда нам не требуется решение всей задачи в нашем приложении.
Простой пример: посылка запроса на сервер. В реализации этой посылки мы можем описать много логики. К примеру:
- Статус загрузки: true/false
- Загруженные данные: null | Data
- Ошибка: null | Error
- Какую часть ответа загрузили: проценты.

И вот вам сразу пример: https://codesandbox.io/p/sandbox/signal-components-simple-example-74tdrh

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

Моё мнение простое: выносите всю логику в стейт менеджер. Используйте реакт как рендерилку приложения и не более. Не верьте команде реакта, что их волшебный компилятор поправит все проблемы. Нет, не поправит. Концепция глубоко сломана. Метрикой хорошести вашего кода должно быть количество хуков в приложении. Чем их меньше, тем приложение лучше. В идеале их должно быть НОЛЬ.

Ну и обратите внимание на @reatom_ru и @effector_ru. Они помогут вам в улучшении вашего кода.
Telegram Андруша пишет код Почему реакт идёт куда-то не туда pt1 - React Server Components(RSC) вы тута - React Compiler - Hooks Спасибо подкасту "Веб-Стандарты"(https://www.youtube.com/@webstandards_ru), за напоминание что у меня горит от реакта. Всем рекомендую. RSC - это возможность…
  • 👍 40
  • 💩 4
  • 🤡 3
  • 🔥 2
More from @xavescor_code
  1. Sep 29, 2026https://x.com/thsottiaux/status/2104823812042940713 Ну, впервые в жизни ванганул, и походу…
  2. Sep 24, 2026Тут в моём казахстанском пузыре происходит прикольная вещь. Ща, в пятницу, в кз обьявлен т…
  3. Sep 22, 2026Чуть чуть проснусь от спячки по важному поводу. Мы походу пришли к AGI в ЛЛМках. Ну, точне…
  4. Aug 6, 2026Уже почти месяц прошел после взлома моделями OpenAI – HuggingFace. Спустя это время каждая…
  5. Jul 28, 2026https://t.me/denissexy/11581 Знаете, меня очень сильно удивляет вопрос: какого чёрта подоб…
  6. Jul 28, 2026Антропик: китайцы дистилируют наши модели, надо забанить их Опенаи: китайцы дистилируют на…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →