В третьей части навайбкодил умную система столиков на событиях. VIP-клиенты размещаются в зоне из 5 столов, обычные — в зоне из 10.
Если все столы заняты, система не падает, а заказы помещаются в очередь — это буферизация. Как только стол освобождается, следующий заказ автоматически размещается.
Количество тестов увеличилось с 96 до 138, но покрытие основных сервисов упало до 77%. Основной плюс в том что событийные архитектуры позволяют легко добавлять новые функции без переписывания всей системы.
😮💨 Как это связано с вайбкодингом: в классическом REST у нас есть запрос-ответ, что может превратить связи в спагетти и нагрузить сервер большим количеством запросов.
В событиях же все наши сегменты независимы. Главное — понять, какие данные нужно передать в каждый участок и что получить на выходе.
Чтобы не сломать функционал, мы обвешиваем систему интерфейсами и тестами. Это делает реализацию чем-то вроде черного ящика.
Он делает то, что должен, и неважно, что происходит внутри, главное — тесты проходят, а интерфейсы остаются без изменений.
✍️ БОНУС: в корне я добавил cursorrules в MDC. Этот формат позволяет настраивать триггеры для агента.
Если вы хотите создать компонент Vue, в правилах указываем формат файлов (.vue, .ts), для которых будут вызваны наши правила…. Например, хочешь модуль с Pinia, композаблами и хелперами??
Окей, пишешь MDC правило с примерами структуры, указываешь в какой момент его вызывать и в следующий раз LLM сама обратится к этим правилам при вызове
Он продумает структуру под требования и будет писать код по стайлгайдам компании с учетом контекста проекта без необходимости их ручного добавления.
Короче, это уже не IDE, а целый конвейер по проектированию.
📊 #статистика День 1317 | 3316 час в IT
