DEV Community

Cover image for Фреймворки против реальности: Vue и боль настоящего разработчика
Михаил Куликов
Михаил Куликов

Posted on

Фреймворки против реальности: Vue и боль настоящего разработчика

🧱 Фреймворки, архитектура и реальность: взгляд разработчика, а не диаграммы

📌 Введение

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


🧠 Vue: знает всё, но требует ручного управления

Vue умеет:

  • отслеживать реактивные данные
  • проксировать объекты
  • передавать ref с el после рендера

Но при этом:

  • требует от тебя вручную придумывать key
  • не использует el для генерации уникального идентификатора
  • ломается при сортировке, если key не «идеальный»

Почему Vue не может сам пробежаться по своим ref и дополнить виртуальные узлы уникальными key? Он же уже знает, что отрисовал.


🧱 Архитектура vs разработка

Фреймворки часто строятся не разработчиками, а архитекторами, которые:

  • не пишут руками сложные интерфейсы
  • не отлаживают вложенные списки
  • не сталкиваются с реальными багами при мутациях

А решения принимаются в духе:

«Это не соответствует философии проекта».


🧑‍💻 HR-фильтр: отбор по ключевым словам

Когда разработчиков отбирают по «знанию Vue» или «опыту с React», но не по глубине понимания, в команды попадают те, кто умеет использовать, но не умеет думать в рамках фреймворка. И тогда:

  • архитектура становится догмой
  • баги — нормой
  • а разработчик — тем, кто «обходит» фреймворк, чтобы просто сделать свою работу

💬 Что можно изменить

  • Vue (и другие фреймворки) могли бы автоматически генерировать key, используя ref, VNode, el, WeakMap
  • Могли бы отказаться от догмы «до рендера», если это мешает реальной разработке
  • Могли бы слушать тех, кто пишет руками, а не только тех, кто рисует архитектуру

✊ Заключение

Фреймворки должны помогать, а не мешать. И если они знают, что рендерят, если они уже держат el в ref, если они уже отслеживают Proxy — они могут взять на себя чуть больше ответственности. Потому что разработчик — не тот, кто должен угадывать, как обойти ограничения. Он должен просто писать код, который работает.

Top comments (0)