当前位置:首页 > 文章列表 > 科技周边 > 人工智能 > ChatGPT强悍的编程能力,让我吓出一身冷汗!

ChatGPT强悍的编程能力,让我吓出一身冷汗!

来源:51CTO.COM 2023-04-17 15:33:57 0浏览 收藏
推广推荐
免费电影APP ➜
支持 PC / 移动端,安全直达

大家好,我们又见面了啊~本文《ChatGPT强悍的编程能力,让我吓出一身冷汗!》的内容中将会涉及到等等。如果你正在学习科技周边相关知识,欢迎关注我,以后会给大家带来更多科技周边相关文章,希望我们能一起进步!下面就开始本文的正式内容~

最近有好几个人给我安利ChatGPT,说老刘快你去看看吧,这货实在太强了,搞不好我们程序员都失业了。

刚开始我都是微微一笑,怎么可能?我之前的观点一直都是在我的有生之年,AI绝对不可能干掉程序员。

但是安利的人实在是太多了,我忍不住要去注册个账号去看一下。

没想到这货竟然没对中国开放,网上有些攻略,我嫌麻烦,赶紧呼叫在国外的好兄弟,请他帮忙注册一个账号。 

尝试开始,我决定跳过那些简单的问答,例如:

如何反转一个字符串?

如何发起一个HTTP调用?

因为这种东西对于阅码无数的AI来说太小儿科了,根本测试不出来它的本事有多大。

程序员的一个核心能力就是拿到需求,能作出优雅的设计,咱们就拿这一点考考它。

先问一个简单的问题:

图片

(点击看大图)

不出所料,它“背诵”得非常好!

它说的最后一个原则是:尽量使用合成/聚合的方式,而不是继承来达到复用目的。 这确实是面向对象一个重要的设计原则。

ChatGPT能运用这样的原则吗?

先问问它会不会做设计:

图片

说得真不错,咱们开始放大招,我手头正好有一个经典案例:薪水支付,这是从经典书《敏捷软件开发:原则,模式和实践》中提取出来的。 

这个案例的需求是这样的:

该系统由一个公司数据库以及和员工相关的数据组成,系统需要准时地按照规则给员工支付薪水

员工有三种类型

1.钟点工,每个小时有固定报酬,他们每天提交工作时间卡,其中记录了日期以及工作小时数,如果每天工作超过8小时,按1.5倍进行支付。每周五对他们进行支付。

2.月薪员工,工资固定,每个月的最后一个工作日对他们进行支付

3.销售人员,有固定工资,但会根据他们的销售情况,支付给他们一定数量的佣金,他们会提交销售凭条,其中记录了销售的日期和数量。每隔一周的周五对他们进行支付。

员工可以选择支付方式,可以把支票邮寄到他们指定的邮政地址,也可以保存在财务那里随时支取,或者要求直接存入他们指定的银行账户。

看了这个需求以后,一般的设计是这样的:

图片

Employee 作为基类,不同类型的雇员类来继承。

但是这个需求会有变更,客户要求员工类型可以变更,例如从钟点工变成月薪雇员,这样上面的设计就不行了。

这个时候应该做个抽象,,用一个类PaymentClassification来表达支付分类,然后让Employee类持有这个实例,简单说就是组合代替继承。

图片

这相当于是个陷阱了,我们程序员能识别,抽象,这个ChatGPT可以吗? 我还真有点好奇。

先问最初的需求,ChatGPT的回答是这样的:

图片

(点击看大图)

你别说,还真是不错,它“理解”了需求,从中抽取出了名词进行类的设计,并且设计好了类的继承关系。

已经达到了面向对象设计的初级水平。

接下来是重点,给他挖坑:

图片

图片

图片

非常惊艳,这货竟然学会了抽象!

虽然它抽象出的类型叫EmployeeType,不如PaymentClassification那么精确,但是大方向是一致的:用EmployeeType来管理支付规则,员工类型发生变化时,Employee类不需要变化。

说实话,我看到它给出这个结果,内心是很吃惊的,可以说,能超越相当多的程序员了。

接下来我又问它关于支付周期怎么处理:

图片

这一次它的抽象更加厉害,直接给出了精确的名称:PaymentSchedule,还有相关的伪代码!

图片

它还特别提到了,当需要修改支付周期时,只需要更改PaymentSchedule即可,不用修改原有的员工类,组合优于继承,再次体现出来

这和书中的例子几乎一样了:

图片

继续问支付方法的处理方式:

图片

不出所料,它的设计依然很棒:

图片

实际上,ChatGPT的设计,已经非常接近书中的最终方案了:

图片

尝试到这里,心里有一丝失落和不甘,这个ChatGPT实在是太强悍了,展示出来很强的设计能力,并且对话过程非常流畅

人工智能真的能理解需求,学会了抽象,能设计出漂亮的类结构了吗?程序员的核心能力被替代,程序员的危机真的来了?

我又问了它一个问题,让它把类图画一下:

图片

图片

图片

等等,这里的类名怎么和之前的不一样了,怎么出现了一个新的概念:工会成员? 我在这次对话中,可是从来没有告诉过它这个概念啊!它从哪里知道的?

最大的可能是,这货并没有理解我告诉它的需求,它之前应该学过这个案例,依然是在“背诵”它学习的东西,自作主张把工会成员也给我弄出来了,从而露出了马脚。 

我关掉了ChatGPT网站,再次登录,重新用同样的内容和它交互,这次的结果彻底地把它暴露了。

图片

图片

看到没有,这次它根本没有抽象出PaymentClassification/EmployeeType,它竟然推荐了面向过程的思路,添加一个type的属性,用switch来解决问题。这比之前的方案要差太多了。

最后聊一下感受吧!ChatGPT确实很厉害,应该是学习了海量的数据,肚子里货很多,但是它依然没有真正的理解需求,它告诉我们的答案就是在现有知识中做提炼和整合。

如果抛给它一个完全全新的领域问题,估计它会懵的,大家可以拿实际业务问题来玩一下。

所以,ChatGPT是一个好帮手,但是你要想完全依赖它,可要掂量掂量了,它告诉你的可能是优雅的代码,也可能是垃圾代码。

今天关于《ChatGPT强悍的编程能力,让我吓出一身冷汗!》的内容介绍就到此结束,如果有什么疑问或者建议,可以在golang学习网公众号下多多回复交流;文中若有不正之处,也希望回复留言以告知!

版本声明
本文转载于:51CTO.COM 如有侵犯,请联系study_golang@163.com删除
如何在 Windows 11 中自动启用或禁用设置时区如何在 Windows 11 中自动启用或禁用设置时区
上一篇
如何在 Windows 11 中自动启用或禁用设置时区
Apple Watch 通过 watchGPT 应用程序获得 OpenAI 流行的聊天机器人
下一篇
Apple Watch 通过 watchGPT 应用程序获得 OpenAI 流行的聊天机器人
查看更多
最新文章
查看更多
课程推荐
  • 前端进阶之JavaScript设计模式
    前端进阶之JavaScript设计模式
    设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
    543次学习
  • GO语言核心编程课程
    GO语言核心编程课程
    本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
    516次学习
  • 简单聊聊mysql8与网络通信
    简单聊聊mysql8与网络通信
    如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
    500次学习
  • JavaScript正则表达式基础与实战
    JavaScript正则表达式基础与实战
    在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
    487次学习
  • 从零制作响应式网站—Grid布局
    从零制作响应式网站—Grid布局
    本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
    485次学习
查看更多
AI推荐
  • ChatExcel酷表:告别Excel难题,北大团队AI助手助您轻松处理数据
    ChatExcel酷表
    ChatExcel酷表是由北京大学团队打造的Excel聊天机器人,用自然语言操控表格,简化数据处理,告别繁琐操作,提升工作效率!适用于学生、上班族及政府人员。
    3214次使用
  • Any绘本:开源免费AI绘本创作工具深度解析
    Any绘本
    探索Any绘本(anypicturebook.com/zh),一款开源免费的AI绘本创作工具,基于Google Gemini与Flux AI模型,让您轻松创作个性化绘本。适用于家庭、教育、创作等多种场景,零门槛,高自由度,技术透明,本地可控。
    3429次使用
  • 可赞AI:AI驱动办公可视化智能工具,一键高效生成文档图表脑图
    可赞AI
    可赞AI,AI驱动的办公可视化智能工具,助您轻松实现文本与可视化元素高效转化。无论是智能文档生成、多格式文本解析,还是一键生成专业图表、脑图、知识卡片,可赞AI都能让信息处理更清晰高效。覆盖数据汇报、会议纪要、内容营销等全场景,大幅提升办公效率,降低专业门槛,是您提升工作效率的得力助手。
    3458次使用
  • 星月写作:AI网文创作神器,助力爆款小说速成
    星月写作
    星月写作是国内首款聚焦中文网络小说创作的AI辅助工具,解决网文作者从构思到变现的全流程痛点。AI扫榜、专属模板、全链路适配,助力新人快速上手,资深作者效率倍增。
    4567次使用
  • MagicLight.ai:叙事驱动AI动画视频创作平台 | 高效生成专业级故事动画
    MagicLight
    MagicLight.ai是全球首款叙事驱动型AI动画视频创作平台,专注于解决从故事想法到完整动画的全流程痛点。它通过自研AI模型,保障角色、风格、场景高度一致性,让零动画经验者也能高效产出专业级叙事内容。广泛适用于独立创作者、动画工作室、教育机构及企业营销,助您轻松实现创意落地与商业化。
    3835次使用
微信登录更方便
  • 密码登录
  • 注册账号
登录即同意 用户协议隐私政策
返回登录
  • 重置密码