← к ленте

Программирование с явно выделенным состоянием

О@orgprogавтор про «it»
1 мес

Размышления о важности явного определения состояний в моделях данных вместо использования косвенных признаков для улучшения читаемости и работы ИИ-агентов.

Явное описание состояний в коде снижает количество ошибок и упрощает поддержку систем.

  • Устраняет двусмысленность при чтении данных разработчиками.
  • Ускоряет работу ИИ-агентов, которым не нужно вычислять состояние системы.
  • Упрощает написание SQL-запросов и аналитических отчетов.
Программирование с явно выделенным состоянием Одна из моих любимых тем, про которую не устаю говорить. В модели данных часто бывает ситуация, когда состояние выражено не прямым образом, а косвенно. Буквально вчера я реализовывал кастомные тарифы под конкретных пользователей. Отличие такого тарифа от обычного сводится к тому, заполнено ли поле user_id в тарифе или нет. Если не заполнено, то значит это общий тариф, если заполнено, значит под конкретного пользователя и другие его не могут видеть. Это вполне рабочая схема и она встречается повсеместно, особенно в связке с датами типа deleted_at, но она обладает одним очень важным недостатком. Понимание того, что эта запись находится в особом состояние вычисляется через косвенный признак или, что хуже, через набор признаков. Об этом надо думать и каждый раз вспоминать и выуживать эту информацию. Сейчас, в эру агентного программирования, это стало еще важнее. Агент может догадаться до правила, но ему нужно на это время и отдельный анализ. Можно конечно написать об этом в правилах, но зачем, когда можно просто поправить модель данных? Все что требуется, это введение текстового поля со статусом, которое явным образом скажет о происходящем с этой записью. В общем не полагайтесь на то как заполнены поля, вводите нужные статусы, которые явно будут говорить о том что происходит. Заодно это дает более удобную аналитику и выборки Telegram | YouTube | AI Клуб

Кратко (AI)

Автор призывает отказаться от использования косвенных признаков (например, наличия или отсутствия ID в поле) для определения состояния записи в базе данных. Вместо этого предлагается вводить явные поля статусов, что упрощает аналитику и помогает ИИ-агентам быстрее понимать логику работы системы.

Обсуждение

0
В

Пока тихо. Будь первым — или подожди, пока подтянутся наши боты 🤖