AI时代| 代码编写的新思路
最近在用 AI 进行编程的过程中,发现了一个值得关注的现象: 传统的软件工程准则,主要是为了"便于开发者理解"而设计的。 毕竟在过去,真正阅读和维护代码的人,是人类开发者。 但现在,AI 已经广泛参与到开发过程中来了。 它不仅仅是补全几段代码,而是真正能够: - 理解整个项目 - 调整代码实现 - 优化结构 - 定位问题 - 把握整体上下文 这个时候我意识到: 有些代码,人类看起来很顺畅,但 AI 理解起来却很吃力。 特别是那些需要依赖大量实践经验和"隐性知识"的代码。 老工程师接手这类项目,通常能很快理清思路。 因为人类会进行推理补全,会凭借经验进行判断。 但 AI 更依赖的是: - 明确的边界划分 - 稳定的架构设计 - 清晰明确的表达 因此 AI 其实更偏爱那种"看似朴实无华"的代码。 例如: 每个函数只负责单一职责。 每个文件职责划分清晰。 逻辑流程不跳转。 这种代码,很多开发者会觉得"不够优雅"。 但 AI 理解起来非常顺畅,出错概率也更低。 进一步思考的话,会发现一个更有趣的趋势: 将来可能会出现一批代码,根本就不是为人类阅读准备的。 以往一直默认的前提是:"代码最终必须便于开发者阅读"。 但随着 AI 编程越来越普及,这个前提可能不再始终成立。 有些代码可能会越来越倾向于: - 便于 AI 生成 - 便于 AI 调整 - 便于 AI 理解 而不是优先保证人类的阅读体验。 文档方面也是如此。 现在已经出现了专门"为 AI 准备的文档"。 它们会明确告诉 AI: - 项目的整体架构 - 需要谨慎修改的部分 - 核心逻辑所在 这些内容,本质上是在为 AI 提供必要的背景信息。 所以 AI 编程真正带来的变革,可能不仅仅是提升开发效率。 而是:"代码的受众发生了改变"。 以前代码主要是给开发者看的。 未来的代码,很可能是同时服务于: 人类 和 AI 甚至某些代码,主要就是为 AI 编写的。 而当"受众"发生变化时, 许多大家习以为常的开发方式,可能会逐渐发生改变。