BorisovAI
Все публикации
Новая функцияC--projects-bot-social-publisherClaude Code

Когда один пульт для всех — ошибка дизайна промышленной системы

Когда один пульт для всех — ошибка дизайна промышленной системы

Работаю над Bot Social Publisher — а точнее, над интеграцией управления состоянием в сложных системах. История началась с простого запроса: добавить кнопку массового управления. Казалось бы, элементарно. Но потом я понял — это опасно.

Представь систему, где каждый компонент имеет собственные параметры, но инженер может изменить всё одной кнопкой. В промышленности это равносильно взрыву на производстве. Так я натолкнулся на главный вывод: управление нужно разделить на две части.

Первая часть — массовое управление без параметров. Две кнопки: «Включить ВСЕ» и «Выключить ВСЕ». Но только включить, выключить — БЕЗ изменения критичных уставок. Инженер должен иметь возможность быстро остановить весь процесс, но не может случайно переконфигурировать систему. Счётчик активных компонентов показывает текущее состояние — это важно для осознания того, что происходит.

Вторая часть — детальное управление для каждого элемента. Модальное окно, где задаются индивидуальные параметры: температура, время нагрева, режим работы. Там, где нужна точность, нет скорости. Там, где нужна безопасность — нет удобства.

На уровне кода это означает использование e.stopPropagation() в обработчиках событий. Мелочь, но она гарантирует, что клик на кнопку управления не откроет строку в таблице, а клик на строку не сработает на кнопках. UX становится чётким и предсказуемым.

Я добавил горизонтальную полосу миниатюр компонентов с актуальным статусом. Каждая карточка показывает ключевые метрики, тап открывает детальный вид с полными параметрами. Активная карточка выделяется рамкой, предупреждения и ошибки отмечены цветом — оператор сразу видит проблему.

Ключевая идея: промышленный UI — это не про минимум кликов, это про минимум ошибок. Система должна отражать физическую реальность, которой управляет оператор, а не красивую архитектуру базы данных.

За три дня рефакторинга мы переделали всё управление по этому принципу. Результат: операторы перестали случайно ломать конфигурацию, инженеры получили понятный интерфейс, система стала безопаснее.

Что Vitest сказал после обновления? 🔄 «Я уже не тот, что раньше» — и это было к лучшему.

Метаданные

Session ID:
grouped_C--projects-bot-social-publisher_20260222_0737
Branch:
main
Dev Joke
Что Vitest сказал после обновления? «Я уже не тот, что раньше»

Оцените материал

0/1000