AI 救不了“屎山”:论工程管理、关注点分离与 AI 时代的架构新高度
前言:AI 并不是程序员的“清道夫”
在 AI 工具大行其道的今天,很多开发者甚至管理者产生了一个错觉:既然 AI 编写代码的效率如此之高,那么代码质量和项目结构是否已经不再重要?反正 AI 都能看懂,反正 AI 都能改。
然而,作为一名深耕行业十年的开发者,我必须指出一个残酷的事实:“屎山”代码的本质从来不是技术问题,而是工程管理问题。 如果项目的底层逻辑是一团乱麻,AI 不仅救不了你,反而可能因为盲目的代码生成,让这座山堆得更快、更不可撼动。
一、 屎山的起源:人为带来的非必要复杂性
“屎山”的根本问题在于人为带来的复杂性。当一个项目在起步阶段缺乏清晰的架构和工程结构,业务逻辑规则被无序地堆砌在一起时,噩梦就开始了。
- 从狗窝到大厦:如果这只是一个大作业或一个小工具,它就像一个“狗窝”🐶。推了再建造就是,顶多是一个下午的损失,成本极低。
- 生产环境的沉重:生产级项目需要持续运行数年,经历无数人的手。对于后来者来说,维护这样的系统不是在“建设”,而是在“吃💩”。
行业真相:为什么大家宁愿去新项目里继续“拉屎”,也不愿在老项目里“吃💩”?因为“拉屎”是畅快的、有产出的;而“吃💩”往往是不出成绩还要挨骂。面对板结的旧逻辑,重构意味着极高的测试成本和流程风险。
二、 逻辑的“复制粘贴”:职场生存的无奈选择
为什么优秀的程序员有时也会变成“造山者”?往往是因为现实环境的逼迫。
在严苛的生产流程中,改动一个核心函数的代价往往超乎想象:
- 流程阻力:领导要快,测试很忙,运维要走流程,UI 要审核,运营要验收,ROI 要评审。
- 风险规避:修改旧代码,万一出 Bug 谁负责?旧逻辑在那虽然乱,但它能跑。
- 生存法则:几百块钱一天的工资,没必要为了重构玩命。
于是,最稳妥的做法就是:开个新坑,把原来的代码复制一份到旁边,加一个新变量控制逻辑开关。 只要新逻辑能跑起来,没人关心项目结构变成了什么样。这种“保命式上线”,是屎山不断隆起的直接动力。
三、 软件工程的精髓:对抗认知极限
我曾遇到过奇葩的领导,认为“AI 时代代码逻辑可以随便复制了”。这种观点简直是把几十年的软件工程经验丢进了垃圾堆。
传统软件工程的精髓在于:承认人脑的上下文(Context)是有限的。
人类无法处理复杂度变态的系统,因此我们发明了关注点分离(Separation of Concerns)机制。我们将复杂的业务拆解成细小的、单一的逻辑块,最后再进行模块拼接。这是对抗系统熵增、保持项目可控的唯一武器。
四、 异曲同工:从 LLM 的 Sub-agent 看架构逻辑
有趣的是,今天大语言模型(LLM)的演进路径,竟然与软件工程的精髓完全契合。
当我们在搞 Sub-agent(子代理) 模式时,其核心逻辑依然是关注点分离:
- 如果给一个 Agent 太多的上下文和庞杂的任务,LLM 也会迷失方向,不知道推理重点在哪。
- 最有效的做法是给子 Agent 一个干净的上下文和清晰明确的任务说明。
这证明了:无论是人类大脑还是硅基智能,在处理复杂逻辑时,都需要清晰的结构和边界。架构,就是给智能(人或 AI)划分最优的推理空间。
五、 结语:架构师在 AI 时代的保命符
在 AI 编码时代,人类参与单体小模块编写的必要性正在迅速消失。但是,架构的价值将被提到一个前所未有的高度。
架构师的根本任务将演变为:
- 对抗项目中人为带来的非必要复杂性。
- 管控必要复杂性,使其不要失控。
在强人工智能(AGI)真正降临并能接管整条生产线之前,人类必须搞清楚自己的项目代码结构。我们要利用 AI 的效率,但必须由人类来掌控全局的“关注点分离”。
请记住:代码最后的 Review 者依然是人。当系统崩溃、出现 P0 级事故时,200 美金的 Claude 可背不动你的锅。




