飞龙博客

feilong.org

AI编程,用AI写代码,应对AI提哪些底层要求 (24)

AI编程,用AI写代码,应对AI提哪些底层要求?下面跟飞龙一起,来一场“如何向AI提好要求”的对话。

我:我想和AI一起写代码,但感觉它给的答案有时候能跑,但质量不高。我该怎么提要求,才能让AI写出更靠谱的代码?

AI:问得好!这就像雇了个能力强但一根筋的程序员。你不能只说“做个登录页面”,得把各种“规矩”和“标准”都讲清楚。

我:有道理。那具体我该怎么说?

AI:首先,架构和设计你得说清楚。比如,你可以直接说:

“咱们这个消息通知,要支持未来加新的通知渠道,比如短信或企业微信。”

我:明白了,得告诉它用哪种“武功招式”。

AI:那代码本身的质量呢?我总怕它写出隐藏的bug。

AI:必须明确提安全和健壮性的要求。比如:

“这个函数要处理用户上传的Excel文件。必须严格校验文件格式和大小,防止恶意文件。数据库查询,必须用参数化查询,禁止字符串拼接,防止SQL注入。”

我:对!有时AI给的代码,性能不高。

AI:没错,性能要求也可以提。比如:“这个函数会处理可能上万条数据,请确保性能,比如避免嵌套循环。另外,操作大字符串时注意内存。”

我:那怎么让代码更好维护呢?以后我还得看。

AI:这涉及到工程化。你可以要求:“请把代码写成可独立测试的。依赖通过参数传进来,别藏在函数内部直接调。关键函数请加上清晰的JSDoc注释,说明参数和返回值。”

我:要求好多,有没有一个“万能”的提问模板?

AI:可以试试下面的提问结构:

【目标】:我要做什么?(如:实现一个带验证的用户注册函数)

【设计】:大概怎么设计?(如:采用策略模式分离不同验证规则)

【要求】:必须遵守的规矩是什么?(如:密码必须哈希存储、验证逻辑要可单元测试、用户名前后去空格)

【输出】:我要你给出什么?(如:给出完整的函数代码,并附上3个典型测试用例)

我:比如这样问?

“目标:写一个Node.js函数,从API获取用户列表并缓存1小时。

设计:用装饰器模式包装API调用函数,添加缓存逻辑。

要求:缓存用内存对象就行,但要处理并发请求,防止‘缓存击穿’。缓存失效后,只允许一个请求去更新缓存,别的请求等待。

输出:给出TypeScript实现,并解释并发处理的逻辑。”

AI:太棒了! 就是这么问。你把“防止缓存击穿”这种底层问题都点明了,AI给出的方案质量会高好几个档次。

我:懂了,就是把AI当成一个需要精确指令的员工,把我的架构思维、安全意识和代码标准,通过要求“注入”给AI。

AI:正是如此

本文更新网址:https://feilong.org/ai-coder-basic-demands

2026-03-02 ~ 2026-03-02

加入收藏夹,查看更方便。

分类: AI编程

旧文:

以下是广告