Здравствуйте, меня зовут Дмитрий Карловский, и меня хлебом не корми, а дай поиздеваться над хайповыми технологиями. И сейчас я расскажу вам, как провёл лето.
В этом сезоне ко мне на операционный стол попались разные JS, CSS и тест фреймворки да методологии, менеджеры состояний и потоков исполнения, коллекции виджетов и даже приложений. Приготовьтесь, далее вас ждёт целых 32 часа отборного кринжа!
View-фреймворк Svelte
Легковесное ядро с шустрой реактивностью, но...
Не перехваченное исключение ломает всё приложение.
Отслеживание изменений ломается на мутациях, отличных от присвоения.
При компиляции код компонента раздувается на порядок.
Две модели реактивности, работающие по разным принципам, суммирующие недостатки друг друга.
Ускоритель рендеринга Million.js
В 3 раза (на 70%) быстрее React, но...
У вас не должно быть логики в компонентах.
Вы не должны использовать компоненты.
У вас будет куча WTF ограничений.
У вас не будет статической типизации.
Фронтенд-фреймворк SolidJS
Мелкозернистая pull‑реактвность, но...
Система реактивности капитально ломается при исключениях.
ErrorBoundary перехватывают не все исключения.
Memo вычисляются когда они никому не нужны.
Без обмазывания batch‑ами, эффекты (включая полную актуализацию DOM) вызываются для грязного состояния.
Финал стрима не записался, да.
Система ленивой реактивности Vue
Мелкозернистая ленивая реактивность, но...
При всплытии исключения компонент просто исчезает.
Нет отсечения эквивалентных изменений.
Неконсистентное состояние при циклических зависимостях.
Система интенсивной реактивности Nano Stores
Крайне малые размеры, но..
Лишние вычисления и сайд‑эффекты.
Медленная работа: и архитектурно, и по реализации.
Только статические зависимости с ручным приводом.
Нестабильность поведения.
Транзакционное хранилище Redux
Централизованный сериализабельный тайм‑тревел, но...
Много бойлерплейта с кишками наружу.
Врут про undo/redo.
Утечки памяти by design.
Тормоза на больших проектах.
Сложно переиспользовать свой код.
Требует кучи тяжёлых костылей.
Декомпозитор логики Effector
Столько обещаний, но...
Линейная бизнес‑логика превращается в лапшу.
Много бойлерплейта с ручным приводом.
Деградация производительности по мере роста приложения.
Нестабильная работа при возникновении исключения.
Легко допустить конфликт инвариантов, который приводит к дребезгу, неконсистентности или даже зависанию.
Файловая архитектура Feature Slices Design
Стандартизированная декомпозиция, но...
Распыление каждой бизнес‑фичи по всему проекту.
Нечёткие сомнительные правила.
Тонны бойерплейта на синглтонах.
Ограниченная масштабируемость и гибкость.
Тестовый фреймворк Jest
Запуск тестов параллельно с мокнутыми импортами, но..
Медленное исполнение каждого теста.
Врут про Zero Config.
Развесистый сложный API.
Заточка под модульные тесты вместо компонентных.
Красивые отчёты не помогают в отладке.
MPA-фреймворк Qwik
Быстро что‑то показывает, но...
Тупит на простых действиях из‑за дозагрузки.
Полурабочее состояние при нестабильном соединении.
Отзывчивость сильно зависит от загруженности сети и сервера.
Состояние гонки реакций на действия пользователя.
Полностью ломается в оффлайне.
SSR-фреймворк Astro
Классные метрики, но...
Тормоза и глюки в дев‑режиме.
Сетевые задержки при любой навигации.
Падение при лагающей/потерянной сети.
CSS-фреймворк TamaGUI
Столько всего обещает, но...
Много весит.
Адски тормозит.
Много копипасты.
Отвратительный UX.
Слабая кастомизируемость.
Библиотека компонент QUASAR
Богатый набор компонент, но..
Медленная работа.
Огромный вес.
Слабая кастомизируемость.
Сомнительные практики.
Экосистема TS-фреймворков $mol
Чёрная магия, заставляющая всех страдать и плакать кровавыми слезами, но:
Нет хайпа в твиттере!
Нет секси‑лендинга!!
Нет документации!!!
Продолжение следует
Спасибо за внимательное терпение! А пока вы ждёте следующего сезона, предлагаю обсудить текущий на форуме Гипер Дев. А если совсем уж не терпится увидеть следующий, то приманить его рублём, и предложить очередную жертву в комментариях.