TGViewer
S0ER S0ER @softwareengineervlog · 10.5K subscribers
Post #2372 7.23K

Forwarded from SOERDEV | развитие инженеров-программистов

Мы вчера обсуждали, что далеко не каждая кодовая база готова к тому, чтобы ее смог сопровождать ИИ, вот статья, где больше конкретики

Коротко:
Проблема в том, что ИИ не умеет накапливать контекст. Все, что он получает на вход, он счтает достаточным для принятия решения. Причем, даже если ему дать инструкцию проверить хватает ли данных в контексте, он с высокой вероятностью не сможет качественно отличить ситуацию от "минимально достаточного" и "реально необходимого".

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

Что можно сделать?
Чтобы ИИ начал лучше работать с кодом, в статье прделагается следующее:

- Перестраивайте компоненты так, чтобы они заканчивали работу, а не запускали цепную реакцию. В статье сказано дословно сказано "Sinks, Not Pipes" идея в том, что каждая функция должна завершать свою работу,а не порождать цепочку вызовов после себя. От себя добавлю, что это классическое разделение на main и утилитарные функции.

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

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

- Файловая структура должна соответствовать модульной декомпозиции или принцип "честной архитектуры". Тут важно чтобы нейминг и логика были прозрачные и понятные.


Чтобы облегчить работу ИИ можно использовать тесты, как источник правды: тесты проходят, значит все ок.

Резюме:

• Организуйте папки так, чтобы архитектура читалась с первого взгляда
• Сделайте тесты границами - проходят, значитможно не лезть внутрь
• Проектируйте интерфейсы честно - никаких скрытых эффектов
• Регулярно проверяйте зависимости - отлавливайте "скрытые связи"
• Внедряйте прогрессивное раскрытие - от общего к частному
Ianbull Sinks, Not Pipes: Software Architecture in the Age of AI Software architecture principles like low coupling, high cohesion, and minimal side effects matter more than ever when AI agents are the ones navigating your codebase.
  • 👍 19
  • ❤ 10
  • 🔥 3
  • 🤝 1
More from @softwareengineervlog
  1. Sep 3, 2026Google выпустила Gemini 3.8 Flash — новая быстрая модель уже обходит гигантов в кодинге. П…
  2. Sep 3, 2026Сейчас использую DeesSeek v4 Flash, на готовой кодовой базе решать стандартные таски из тр…
  3. Aug 6, 2026Полезное: разраб сделал интерактивный мануал, который по шагам показывает, что происходит…
  4. Aug 5, 2026Ты ненастоящий программист! Это происходит снова и снова, и каждый раз одинаково. Я начал…
  5. Jul 27, 2026Внимание, скам! Появился бот который выдает себя за бота моего канала. Я НИЧЕГО ЧЕРЕЗ БОТО…
  6. Jul 25, 2026У Сбера есть интересный whitepaper где он описывает технологию разработки продукта с помощ…
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 →