APP下载

ChatGPT 五分钟写完插件,功能完善,还可加需求改 BUG

消息来源:baojiabao.com 作者: 发布时间:2024-11-16

报价宝综合消息ChatGPT 五分钟写完插件,功能完善,还可加需求改 BUG

ChatGPT 写代码,水平究竟如何?

不到 5 分钟,做出一个 WordPress(一款内容管理系统软件)插件,且代码很干净。

测试者名叫 David Gewirtz,是一位 1982 年进入 IT 行业的老炮,供职过的公司包括:赛门铁克、苹果、Pyramid Technology。

即使拥有 40 年从业经验,他在见识 ChatGPT 能力之后,还是不禁发出感慨:

本以为不会有太多惊喜,没成想,还是吓了一跳

在评测文章中,他还表示这一切既令人着迷,又令人惊讶,同时还令他恐惧

所以,他具体是怎么做的测试?

我们一同来看下。

精力不够,ChatGPT 来凑

此番 David 老哥之所以要用 ChatGPT 写代码,源于他妻子在运营电商网站,每月,她需要根据客户群组名单随机选出一部分名字,生成轮播动画。

过去,David 老哥的妻子用一个网站生成随机名单,不过,该服务要收费,且不便宜。于是,老哥决定发挥"技术功力",自己写一个 WordPress 插件,帮助妻子"降本增效"。

那么问题来了 -- 即便是小小 WordPress 插件,也需要好几天去完成,这当中需添加用户界面元素,也要编写逻辑代码,鉴于自己实在太忙,于是,David 想到 --

最近 ChatGPT 不是很火么?要不试试?

说干就干,他先写了第一个提示,描述想要的文字(代码)到底是什么。

具体如下:

编写一个 PHP 8 兼容的 WordPress 插件,它提供一个文字输入区域,可将列表粘贴进去,还带有一个按钮,按下可将输入条目随机排列再显示出来。

不到一分钟,代码就生成出来了:

图源:David Gewirtz / ZDNET

测试者将上述代码复制到一个.php 文件中,压缩并上传服务器。

唔,亲测有效。

当他将该插件拿给妻子看,对方一脸惊讶,不过,她马上加了新需求:重复的名字不能挨着。

于是,码农 ChatGPT 有了新任务。

需要保证相同条目不会挨着(除非没有其他选项)… 此外,输入条目数与结果条目数得相同。

30s 后,结果来了。

老样子,上传服务器并测试 -- 有效,但输出包含了空行。

那提示它一下。

… 不能有空行…

A Few Moments Later……

结果又来了,测试结果没问题。

继续加大力度,测试者希望该插件能统计一下处理了多少行数据。

结果 ChatGPT 照样能完成。

让我们一起看看,这款插件的最终形态,功能还挺完善:

能生成相应 UI 并处理一行行数据 图源:David Gewirtz / ZDNET

总结一下。

老哥认为,ChatGPT 生成代码亲测有效,满足了需求,其中编写了 UI 界面及处理逻辑,从代码本身看也很干净。

不过,问题也不是没有。

其中一个瑕疵是 -- 代码里面并未包含 WordPress 的全部最优 / 最标准的实现方法,如未进行清理用户输入,此项处理意味着,黑客无法在字段中填充或破坏数据,在 WordPress 社区也有严格要求。

为此,作者尝试让 ChatGPT 调整下。结果它调了,但又没完全调…… 代码只清理了 PHP 函数输入端,但并未清理用 HTML 调用 PHP 时的输入,这会让黑客仍能钻空子。

另一个问题是,作者要求 AI 编程同时为插件命名,它却生成了一个完全不同的插件。

且后续测试者试图添加更多功能,也无法实现,说明代码维护方面 ChatGPT 也不是很擅长。

最后,测试的老哥谈了谈自己的感想。

目前,ChatGPT 编写一个简单插件倒是没问题,整个过程还是让他眼前一亮的。

不过这仍是个简单任务,相当于一次大学生作业,与之对比下,维护 50000 个用户的开源插件肯定更为复杂。

网友:可能插入恶意代码

值得一提的是,这位老哥还问过网友 -- 对用 ChatGPT 生成代码担心什么,并自己给出看法

有人担心,AI 会冷不丁在程序中加入恶意代码或促销信息,对此,测试者补充道,至少在上述编程中,ChatGPT 生成代码是干净的。

也有人认为,它无法给出最佳代码,测试者针对该问题认为功能性能满足即可,足够好就足够了。

还有人担心它会替代人类程序员的工作,此番测试的 David 也有同感。

最后问问,你让 ChatGPT 敲过代码么?效果如何?

参考链接:

  • [1]https://www.zdnet.com/article/i-asked-chatgpt-to-write-a-wordpress-plugin-i-needed-it-did-in-less-than-5-minutes/

  • [2]http://davidgewirtz.com/

  • [3]https://twitter.com/DavidGewirtz

本文来自微信公众号:量子位 (ID:QbitAI),作者:詹士

2023-02-12 20:16:49

相关文章