云行 AI 开发日记 - 7. AI 友好编程指南

149 阅读5分钟

如今,AI 编程的浪潮势不可挡,彻底改变了传统的编程范式,氛围编程(Vibe coding)已成为主流。云行 AI 项目同样依托强大的 AI 编程进行构建和开发,并在项目中实施了众多 AI 友好的配置。以下将介绍云行 AI 作为大型项目的 AI 友好编程配置指南。

第一,技术选型一定要选择主流的技术栈,在选择开源项目时优先考虑社区活跃度高的项目。

成熟的技术意味着 AI 很可能已经完全掌握,即便某些代码尚未被训练,AI 也能从丰富的参考资源(如生态、issue、社区等)中获取足够的信息。这样,在使用 AI 生成代码时准确率就会非常高,而且,很多时候还能产出超越人工编程水平的高质量代码。

第二,对于大型项目,需要先开发一个规范的模板代码。

以部门管理模块为例,我们可以先实现一个包含基础增删改查功能的模块,并仔细打磨每个代码细节。这样一来,AI 就可以参考这个部门管理模块来生成其他模块的代码。这充分利用了大模型的样本学习能力——当我们提供一个高质量的标准样本时,AI 就能基于这个样本准确地生成其他模块的代码。

第三,项目需要有清晰完整的文档说明。

文档包括项目的需求说明、架构说明、目录结构和数据库表结构等。即使 IDE 已经索引了项目中的所有文件,但由于上下文长度的限制,AI 很难完全掌握整个项目的信息。如果 AI 缺乏必要的信息,就可能会随意发挥,导致代码质量下降。因此,在一个 AI 友好的项目中,完整而清晰的文档是必不可少的——它能帮助 AI 更准确地理解项目的全部信息,从而提高代码生成的效率。

第四,.cursorrules 文件能让你的 prompt 更加简洁。

虽然 AI 能较好地完成简单任务,但在实际项目中,每个功能都有众多需求和环境限制。这就需要我们在 prompt 中精确描述需求,以确保 AI 能按要求生成代码。对于大量基本规则,我们可以将其写入 .cursorrules 文件中。AI 在每次生成时都会读取这个文件并遵循其中的规则。通过将项目的基本规则写入其中,我们就能大大简化 prompt 的内容。在 .cursorrules 文件中,我们通常要详细编写具体的技术栈、架构规范和每个模块的开发规范,这样 AI 生成的代码就能完全符合我们的规范和环境要求。

第五,要注重模块化设计和组件的抽象封装。

虽然这是标准的开发规范,但许多程序员在开发时往往忽视这一点。具体来说,单个代码文件的行数应控制在300行以内,最多不超过500行。这与AI的上下文限制有关——AI在读取文件时通常只能处理前300行左右的内容。如果让AI处理超过千行的代码文件,不仅会降低其处理效率,还很容易导致错误。

第六,AI每次生成完都必须要做代码审查。

虽然 AI 生成的代码质量通常很高,但我们仍然需要仔细审查每一行代码。在审查过程中,特别要注意代码是否符合项目规范,以及是否存在更优的实现方案。 如果发现生成的代码存在问题,应立即进行调整和优化,也可以让 AI 协助重构。这样做能确保你始终掌控整个项目,避免留下潜在的隐患。

第七,使用 Git 进行版本控制。

在使用 AI 编程时,Git 版本控制变得更加重要。每次让 AI 生成或修改代码后,都应该及时提交到 Git 仓库。这样不仅能追踪 AI 生成的代码变更历史,还能在发现问题时快速回滚到之前的版本。这一点虽然非常重要,但现在几乎所有项目都在使用 Git,这里仅作提醒。

第八,AI 不仅是一位协作伙伴,更是一位优秀的导师。

在使用 AI 进行编程时,我们不仅能从 AI 获得代码帮助,还能从其解释和建议中学习到很多编程知识和最佳实践。AI 能够清晰地解释复杂的代码逻辑,提供多种实现方案的对比,并指出代码中的潜在问题。因此,我们应该不仅把 AI 用于编程工作,还要善于向它提问和学习,从而不断提升自己的编程水平。你的编程水平越高,AI 也会用的越好。

一个AI友好的项目需要良好的工程实践和开发规范作为基础。遵循上述八点原则,我们可以充分发挥AI编程的优势,显著提升开发效率。云行 AI 项目在构建之初就考虑了所有 AI 友好编程的细节配置,包括技术选型、文档说明和 .cursorrules 文件配置等。这些具体配置都可以在我们的开源项目中查看,后面不再赘述。

云行 AI开源地址

Github:github.com/boyazuo/yun…

Gitee:gitee.com/yxboot/yunx…

详细的 AI 配置可以在项目中查看,欢迎关注。