Натальная травматология фронтенда S1 E1-14
- суббота, 16 сентября 2023 г. в 00:00:15
Здравствуйте, меня зовут Дмитрий Карловский, и меня хлебом не корми, а дай поиздеваться над хайповыми технологиями. И сейчас я расскажу вам, как провёл лето.
В этом сезоне ко мне на операционный стол попались разные JS, CSS и тест фреймворки да методологии, менеджеры состояний и потоков исполнения, коллекции виджетов и даже приложений. Приготовьтесь, далее вас ждёт целых 32 часа отборного кринжа!
Легковесное ядро с шустрой реактивностью, но...
Не перехваченное исключение ломает всё приложение.
Отслеживание изменений ломается на мутациях, отличных от присвоения.
При компиляции код компонента раздувается на порядок.
Две модели реактивности, работающие по разным принципам, суммирующие недостатки друг друга.
В 3 раза (на 70%) быстрее React, но...
У вас не должно быть логики в компонентах.
Вы не должны использовать компоненты.
У вас будет куча WTF ограничений.
У вас не будет статической типизации.
Мелкозернистая pull‑реактвность, но...
Система реактивности капитально ломается при исключениях.
ErrorBoundary перехватывают не все исключения.
Memo вычисляются когда они никому не нужны.
Без обмазывания batch‑ами, эффекты (включая полную актуализацию DOM) вызываются для грязного состояния.
Финал стрима не записался, да.
Мелкозернистая ленивая реактивность, но...
При всплытии исключения компонент просто исчезает.
Нет отсечения эквивалентных изменений.
Неконсистентное состояние при циклических зависимостях.
Крайне малые размеры, но..
Лишние вычисления и сайд‑эффекты.
Медленная работа: и архитектурно, и по реализации.
Только статические зависимости с ручным приводом.
Нестабильность поведения.
Централизованный сериализабельный тайм‑тревел, но...
Много бойлерплейта с кишками наружу.
Врут про undo/redo.
Утечки памяти by design.
Тормоза на больших проектах.
Сложно переиспользовать свой код.
Требует кучи тяжёлых костылей.
Столько обещаний, но...
Линейная бизнес‑логика превращается в лапшу.
Много бойлерплейта с ручным приводом.
Деградация производительности по мере роста приложения.
Нестабильная работа при возникновении исключения.
Легко допустить конфликт инвариантов, который приводит к дребезгу, неконсистентности или даже зависанию.
Стандартизированная декомпозиция, но...
Распыление каждой бизнес‑фичи по всему проекту.
Нечёткие сомнительные правила.
Тонны бойерплейта на синглтонах.
Ограниченная масштабируемость и гибкость.
Запуск тестов параллельно с мокнутыми импортами, но..
Медленное исполнение каждого теста.
Врут про Zero Config.
Развесистый сложный API.
Заточка под модульные тесты вместо компонентных.
Красивые отчёты не помогают в отладке.
Быстро что‑то показывает, но...
Тупит на простых действиях из‑за дозагрузки.
Полурабочее состояние при нестабильном соединении.
Отзывчивость сильно зависит от загруженности сети и сервера.
Состояние гонки реакций на действия пользователя.
Полностью ломается в оффлайне.
Классные метрики, но...
Тормоза и глюки в дев‑режиме.
Сетевые задержки при любой навигации.
Падение при лагающей/потерянной сети.
Столько всего обещает, но...
Много весит.
Адски тормозит.
Много копипасты.
Отвратительный UX.
Слабая кастомизируемость.
Богатый набор компонент, но..
Медленная работа.
Огромный вес.
Слабая кастомизируемость.
Сомнительные практики.
Чёрная магия, заставляющая всех страдать и плакать кровавыми слезами, но:
Нет хайпа в твиттере!
Нет секси‑лендинга!!
Нет документации!!!
Спасибо за внимательное терпение! А пока вы ждёте следующего сезона, предлагаю обсудить текущий на форуме Гипер Дев. А если совсем уж не терпится увидеть следующий, то приманить его рублём, и предложить очередную жертву в комментариях.