TGViewer
Организованное программирование | Кирилл Мокевнин Организованное программирование | Кирилл Мокевнин @orgprog · 14.2K subscribers
Post #501 10.5K
Программирование с явно выделенным состоянием

Одна из моих любимых тем, про которую не устаю говорить. В модели данных часто бывает ситуация, когда состояние выражено не прямым образом, а косвенно. Буквально вчера я реализовывал кастомные тарифы под конкретных пользователей. Отличие такого тарифа от обычного сводится к тому, заполнено ли поле user_id в тарифе или нет. Если не заполнено, то значит это общий тариф, если заполнено, значит под конкретного пользователя и другие его не могут видеть.

Это вполне рабочая схема и она встречается повсеместно, особенно в связке с датами типа deleted_at, но она обладает одним очень важным недостатком. Понимание того, что эта запись находится в особом состояние вычисляется через косвенный признак или, что хуже, через набор признаков. Об этом надо думать и каждый раз вспоминать и выуживать эту информацию.

Сейчас, в эру агентного программирования, это стало еще важнее. Агент может догадаться до правила, но ему нужно на это время и отдельный анализ. Можно конечно написать об этом в правилах, но зачем, когда можно просто поправить модель данных? Все что требуется, это введение текстового поля со статусом, которое явным образом скажет о происходящем с этой записью.

В общем не полагайтесь на то как заполнены поля, вводите нужные статусы, которые явно будут говорить о том что происходит. Заодно это дает более удобную аналитику и выборки

Telegram | YouTube | AI Клуб
Telegram Хекслет Программы обучения - https://ru.hexlet.io/courses Сообщество @hexletcommunity AI Клуб @hexletclub Поддержка @hexlet_help_bot
  • 👍 63
  • ❤ 18
  • 🔥 6
  • 💯 3
  • ⚡ 1
  • 👎 1
  • 🤔 1
  • 👨‍💻 1
  • 👀 1
More from @orgprog
  1. Sep 21, 2026Банда четырех для эпохи агентов Количество паттернов по тому, как эффективно работать с ИИ…
  2. Sep 16, 2026Главное правило принятия архитектурных решений Когда-то давно в одной из книжек я прочитал…
  3. Sep 13, 2026Сегодня у меня в гостях Александр Поломодов, который до недавнего времени был одним из про…
  4. Sep 12, 2026Ассемблер неправильная абстракция Каждый раз когда заходит речь о повышении уровня абстрак…
  5. Sep 9, 2026Уровни зрелости ai в sdlc Несмотря на то, что все кричат про ИИ, в большинстве компаний ре…
  6. Sep 8, 2026Редкий случай, когда подкаст офлайн в студии и я гость 🙂 Рассказываю про свой путь програ…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →