AI 简介

像 ChatGPT/New Bing 这类 AI 归于人工智能中的 NLP 范畴,也便是自然语言(英文、汉语等)处理范畴。换句话说便是让计算机来了解并正确地操作自然语言,完结咱们给它指定的使命。

准备工作

  1. 你需求想办法注册一个 ChatGPT 账号,或许像本文一样直接运用基于 GPT-4 的 New Bing AI 来完结你的代码优化
  2. 由于 AI 的答复具有必定的随机性,你应该将 AI 设置为精准答复,而不是赋有创造性的答复,这能有效防止 AI 给出过错答案

✏️ 成为提问(Prompt)工程师,让 AI 协助你优化代码

如何成为发问(Prompt)工程师?

想 AI 发问的时分,应该尽或许的具体一些,下面分享一些常见的发问事例作为参阅。

低效

比较低效的,是这种非常简单的发问方法:

优化代码:code

用 Bing AI 测试:

✏️ 成为提问(Prompt)工程师,让 AI 协助你优化代码

可以看到 Bing AI 并没有当即优化你的代码,而是阅览你的代码后,用询问的方法来确定是否要优化这段代码…

合格

优化你提出的需求,添加一点要求和约束,比方 “帮我” “这段”。

帮我优化这段代码:code

✏️ 成为提问(Prompt)工程师,让 AI 协助你优化代码

这时分 Bing AI 就能直接给出一段优化后的程序供你参阅了,省去了一次剩余的对话时间。

高效

  • 持续优化需求,用【】对要处理代码的范围进行约束
  • 添加附加条件,比方 “我不想用 if 句子了”
帮我优化【】中的代码,我不想用 if 句子了:【code】

✏️ 成为提问(Prompt)工程师,让 AI 协助你优化代码

专业

采用 设定人物 + 提出需求 + 附加条件 的发问方法,比方人物设定为高档前端工程师,需求是优化给出的代码,附加条件是不想要 if 句子并给出优化后的代码。

先设定人物

你现在充任一名高档前端工程师

然后发问

帮我优化【】中的代码,我不想要 if 句子并请你给出优化后的代码:【code】

这是一份比较通用且高效的发问格局,建议我们今后常用这种方法进行发问。

代码优化的方向

这里要求发问工程师本身具有必定的代码优化才能,了解根本的代码优化方向,比方:

  • 优化代码结构
  • 优化代码可读性
  • 优化算法和数据结构
  • 优化代码的功能和功率

或许具有一些具体的优化点,比方:

  • 干掉可优化的循环
  • 干掉可优化的 if 句子
  • 缓存常用的值
  • 防止重复的代码
  • 消除剩余的句子

再直白一点,比方:

  • 双循环优化为单循环
  • 表驱动编程替代 if else 句子
  • switch 替代 if else 句子
  • && 或 || 或 三元运算符替代 if 句子
  • 提取全局变量、常量
  • 将重复的代码优化成函数
  • 添加具体的注释

这些优化方向,你都可以在向 AI 发问的时分,添加到附加条件里,指定 AI 往这些当地进行优化。

示例:

帮我优化【】中的代码,将双循环优化为单循环并运用 && 或 || 或 三元运算符替代 if 句子,请你给出优化后的代码:【code】

一直需求查看 AI 的答复

不能无脑相信 AI 帮你优化的代码,它常常也是会给出一个看似正确,实则有 BUG 的代码程序。截取一段 GPT-3.5 的优化事例作为参阅:

✏️ 成为提问(Prompt)工程师,让 AI 协助你优化代码

哪怕是同一段代码,由于发问的方法不同,AI 给出的答案也或许会不同,而且答案还或许有问题。

你能查看出来图中哪一段代码是有 BUG 的吗?

或许需求你拆解代码

如果一大段代码投喂过去,Bing AI 或许并不会帮你优化(特别是在你运用最低效的发问方法的时分):

✏️ 成为提问(Prompt)工程师,让 AI 协助你优化代码

这时分需求将你的代码拆解后一点点投喂给它,比方你可以以函数为单位,一个一个函数叫他帮你优化,而且尽或许将你的发问语依照专业的方法进行发问。

或许需求你提供更多上下文

有时分一个功能模块的代码并不在同一个文件里,这时分就需求你将相关的代码都顺次投喂给 AI,让他阅览后再提出你想要优化的需求。

End

感谢阅览,期望这篇文章能协助你学会更高效的向 AI 发问的方法,终究利用 AI 来协助你优化代码。