首页 > 资讯 >

环球微头条丨Copilot 与 ChatGPT,让程序员如虎添翼 —— 让 AI 们为我们打工!

2022-12-19 19:42:51 来源:

Copilot 来了,程序员会失业吗?ChatGPT 又来了,程序员会失业吗?程序员本来就焦虑,最近似乎越来越焦虑了。在 Copilot 问世时,我感觉自己退化成了工具人:《我退化成一个只会敲 Tab 键的工具人了!》。如今 ChatGPT 又来了,这次我是什么感觉呢?感觉真的 Google 和 StackOverflow 已经不好用了。

不过,经过一段时间对 Copilot 的使用,我的心态已经平和了许多,不再担心失业了。回头来看,其实,它们都是效率工具,它们不是要干掉程序员,而是更好地帮助程序员。众所周知,程序员可以改变世界,那么,借助 Copilot 和 ChatGPT,程序员的自我感觉更棒了!可以更加肆无忌惮地在未知领域里自由探索了!


(资料图片)

探索 Vue

前几天,我开始对一个 Vue 项目做一些迭代优化,这是我第一次接触 Vue 项目。我需要对该 Vue 项目进行保护,添加登录功能,详细过程见《使用 IdentityServer 保护 Vue 前端》。我在这一篇日志里提了一下,说自己参考 Vue 的官方文档,给 Vue 应用添加的方法,在 vue-router 的导航守卫里,按照 vue-router 的官方文档去拿这个方法,居然是 undefined!通过 Google 搜索了很久,都是这种官方文档类似的说明(然而并不管用!),于是我去 StackOverflow 上提了这个问题:https://stackoverflow.com/questions/74769607/how-to-access-vues-methods-from-navigation-guard,这个问题到现在,也没有其他人(除了我自己)回复。

于是我抱着试一试的心理,在 ChatGPT 上问了一下,没有想到立即得到了详细的解答:

它的思路是,将方法添加在 Vue 的 prototype 中,这样,在导航守卫里就能使用 this关键字去访问全局方法了!这真的是比 Google 好用呀!

探索 Mybatis plus

我对 Java 也不熟,它的生态中很多组件,我听上去感觉就是拼写错误。昨天在 Mybatis plus 上就栽了跟头。事情是这样的,我和同事们业余做了一个项目(有兴趣一起来玩的同学们欢迎联系哈),目前刚开始,正在做一个 3D 世界里的角色可以选择自己的皮肤颜色的功能。

https://brickverse.vercel.app/

或者这个链接:https://brick.cat

前端部署在 Vercel 上,后端部署在 Okteto 上。后端服务是一个 Java 项目,我在这个项目里添加了 UserPreference 这个数据表,用来保存用户的偏好设置,详细 api 文档见:https://brickverse-user-service-gracewen1.cloud.okteto.net/doc.html#/brick/%E5%BD%93%E5%89%8D%E7%94%A8%E6%88%B7%E5%81%8F%E5%A5%BD%E7%AE%A1%E7%90%86/createOrUpdateUserPreferenceUsingPOST。

用户可以有很多设置,我的设想是每个用户可以有多个 key-value 键值对,但同一个用户,同一个 key,只能有一条记录。为了简单,就提供一个接口给到用户添加或者更新偏好。我的设想是,对于同一个 userId, key,如果没有记录就添加,有的话,就更新 value。我对 Mybatis plus 不熟,但是在写的过程中,点出了一个 saveOrUpdate 方法,就认为这正是我要的,保存或者更新嘛。我在 Flyway 脚本里将 userId 和 key 设置成唯一索引,心想,当我试着保存一个记录时,首先尝试插入,碰到已有记录的错误时,该方法就转而调用 update。

CREATE TABLE `user_preference` (`id` bigint NOT NULL AUTO_INCREMENT,`user_id` varchar(100) NOT NULL,`key` varchar(100) NOT NULL,`value` varchar(10000) NOT NULL,`create_time` datetime DEFAULT NULL,`update_time` datetime DEFAULT NULL,PRIMARY KEY (`id`),UNIQUE KEY `user_id_key` (`user_id`,`key`)) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci

public boolean saveOrUpdatePreference(String userId, UserPreferenceDto dto) {var key = dto.getKey();var value = dto.getValue();UserPreference userPreference = new UserPreference();userPreference.setUserId(userId);userPreference.setKey(key);userPreference.setValue(value);return this.saveOrUpdate(userPreference);}

没想到,实际上,当想要更新这个 value 时,仍然报了唯一索引冲突错误,而没有进行更新。这时,我才知道,这个 saveOrUpdate,在不传入主键时,总是尝试插入。这时我用 Google 搜索如何让 saveOrUpdate 根据自定义查询条件去判断是否已存在呢?发现似乎只有国人在用 Mybatis Plus,找到的链接全是 csdn 对 saveOrUpdate 的泛泛简介,没有一篇文章讲解高级用法。

这时我抱着试一试的想法,去问了一下 ChatGPT,没想到它立刻马上给予了详细的说明,不仅有代码示例,还有温馨提示,主要指出我的代码问题在于调用 saveOrUpdate 时,没有去数据库里查询已有记录。

你看,它给的代码示例,在调用 saveOrUpdate 之前,先使用 QueryWrapper 去查询了数据库里的现有记录,然后再设置值。看到这里我秒懂了,我需要在调用 saveOrUpdate 之前,根据 userId 和 key 来查询一下数据库中的记录。这时,我想,能不能把这个查询做为参数直接扔给 saveOrUpdate 呢?我试着在 saveOrUpdate 的第一个参数后加了一个逗号,这时, Copilot 就自动帮我补全了代码,我一看,还正是我需要的条件呢!

我按了一下 Tab 键,提交了这个改动:

在 cicd 流水线跑完后,我再试了一次,重新选择皮肤颜色,更新成功了!

总结

我感觉自己从此可以摆脱面向 Google 和 StackOverflow 编程的习惯了,转而面向 ChatGPT 和 Copilot 编程。ChatGPT 和 Copilot,可以让程序员在尝试新的领域时,变得更加有效率。就像朋友圈有朋友留言说的,ChatGPT 和 Copilot 可以互相结对编程,让 AI 们为我们打工!

标签:

环球微头条丨Copilot 与 ChatGPT,让程序员如虎添翼 —— 让 AI 们为我们打工!

Copilot来了,程序员会失业吗?ChatGPT又来了,程序员会失业吗?程序员本来就焦虑,最近似乎越来越焦虑...

2022-12-19

世界热点!还呗网贷14万逾期暂时还不起我会不会被起诉

可能会。如果用户使用网贷消费之后出现了逾期,并且经过网贷机构和第三方的催收人员催缴欠款无果之后,...

2022-12-19

【天天热闻】本钢板材(000761)12月16日主力资金净卖出191.21万元

截至2022年12月16日收盘,本钢板材(000761)报收于3 16元,上涨1 94%,换手率0 21%,成交量7 8万手,...

2022-12-19

每日热文:漳州市出台今年首个区域性刚需购房支持性政策

漳州市出台今年首个区域性刚需购房支持性政策

2022-12-18

全球速讯:激发文旅产业创新动力

【激发文旅产业创新动力】日前,北京市文化和旅游局印发《北京市扩大文化和旅游新消费奖励办法》,拟对...

2022-12-18

观热点:参与行贿行为的处罚有什么?行贿罪怎样判刑?

第三百九十条对犯行贿罪的,处五年以下有期徒刑或者拘役因行贿谋取不正当利益,情节严重的,或者使国家...

2022-12-17

今日报丨东方财富: 东方财富信息股份有限公司关于监事会换届选举的提示性公告

证券代码:300059       证券简称:东方财富     公告编号:2022-105          ...

2022-12-16

【天天时快讯】小鲨易贷逾期多久了会上征信

网贷逾期一般会上征信,有些借贷机构在用户逾期后一天后就会上报给征信机构,而有些借贷机构则是会在几天...

2022-12-16

全球动态:Win11预览版更新 再次针对任务栏搜索框进行修改

近日,微软针对Dev渠道的用户,推出了Build25267预览版更新,在惯例修Bug的同时,再次加入了针对任务栏...

2022-12-16

【环球时快讯】连创4个第一!前三季度清丰县工业经济强劲上扬

今年以来,清丰县坚持“项目为王”,把抓招商、上项目、扩投资、强产业作为高质量发展的根本之策,多措...

2022-12-15

天天新资讯:宝丰:热心群众捡背包 交警助力寻失主

热心群众将捡到的黑色背包交给民警8月17日下午4时,宝丰县公安局交警大队机动队执勤人员正在街面巡逻,...

2022-12-15

【新视野】【机构调研记录】兴业基金调研恒华科技、唐人神等4只个股(附名单)

根据市场公开信息及12月14日披露的机构调研信息,兴业基金近期对4家上市公司进行了调研,相关名单如下:...

2022-12-15

环球快讯:重构跨境收款资金链路,PingPong福贸提供多元化收款服务

重构跨境收款资金链路,PingPong福贸提供多元化收款服务

2022-12-14

天天资讯:双方没有合同有效吗

法律效应还是有的,如果双方都没有履行好自己相应的责任,双方可以协商来废除这个合同。要看具体合同条...

2022-12-14

【报资讯】中小银行频频冲刺H股IPO ,在港上市银行估值却持续低迷

这对于欲实现H股IPO的银行来说,并不是一个好消息

2022-12-14

环球简讯:东望时代(600052)12月13日主力资金净买入344.79万元

截至2022年12月13日收盘,东望时代报收于5 49元,上涨2 04%,换手率0 89%,成交量7 52万手,成交额4...

2022-12-13

天天热文:新一部谍战片定档,演员阵容不错,具有多重看点,终于有片看了

从2022年的影视领域来看,虽然有着大量的作品出现,但能够称之为经典的却少之又少,开年大剧《人世间》...

2022-12-13

速看:石化机械: 中石化石油机械股份有限公司提名委员会工作细则

石化机械:中石化石油机械股份有限公司提名委员会工作细则

2022-12-12

全球讯息:恩华药业:公司目前没有熊去氧胆酸这个产品

(原标题:恩华药业:公司目前没有熊去氧胆酸这个产品)同花顺(300033)金融研究中心12月12日讯,有投...

2022-12-12

快资讯:海王生物: 第九届监事会第二次会议决议公告

证券代码:000078        证券简称:海王生物            公告编号:2022-073  ...

2022-12-09

环球头条:中电环保: 关于选举产生第六届职工代表监事的公告

证券代码:300172   证券简称:中电环保        公告编号:2022-049           ...

2022-12-08

世界新资讯:国网南召县供电公司:“真金白银”助企减负

近段时间以来,国网南召县供电公司营销部送“货”上门,12名客户经理深入县城小微企业,通过现场讲解、...

2022-12-07

短讯!12月6日千方科技现1笔溢价10.79%的大宗交易 合计成交497.76万元

12月6日千方科技发生大宗交易,交易数据如下:大宗交易成交价格10 37元,相对当日收盘价溢价10 79%,...

2022-12-06

李佳琦带货松下冰箱,首站业绩惊人成双十一预售榜首

打开手机,选定直播间,在主播的热情洋溢的介绍中,了解产品、优惠,在心动中下单购买,是现在很多人更为热衷...

2022-11-02

朱兴良带领金螳螂潜心研发,铸就高品质装配式装修

顺应时代需求,在发展的路上随时做出调整。面对疫情时代,健康是百姓越发重视的话题。因此为了配合疫情防...

2022-10-14

A股公司掀回购热潮 879家A股上市公司的回购规模近680亿元

外籍志愿者“老罗”:战“疫”让我感受到“长征精神”

北京朝阳区发现1例新冠核酸检测初筛阳性

为何要高频度核酸检测?上海相关部门回应

上海这个大型社区探索防控新路:划一块 清一块 解封一块

医保基金是“救命钱”,需人人捍卫

上海六人因伪造、买卖通行证被采取刑事强制措施

“反诈警官老陈”:面对网络争议,我驾驭不住流量了

广东专家团队:限时饮食干预与常规能量限制同样有效

31省份新增本土确诊病例2119例 新增本土无症状感染者16383例

广东新增本土确诊病例5例 新增本土无症状感染者1例

上海全市性的封控还会持续多久?相关部门回应

河南新增本土确诊病例3例、本土无症状感染者14例

云南保山捐赠的铁皮石斛、茶叶被偷拿?上海闵行区回应

安徽新增无症状感染者28例

南方降雨再度发展雨水频繁到月底 北方气温多起伏

南方地区将有明显降水 冷空气影响东北华北等地

河北新增本土确诊病例1例、本土无症状感染者77例

黑龙江新增本土确诊34例、本土无症状感染者56例

紧盯“围猎” 湖南通报5起向县区委书记行贿典型案例

北京新增1例本土确诊病例

山西新增本土确诊病例3例、无症状感染者16例

海南新增3例本土确诊病例

年轻人找工作莫让“山寨证书”绊住脚

对话“抗癌考研”女生:学习和奋斗让生活重回正轨

Copyright @  2015-2022 东方家电网版权所有  备案号: 沪ICP备2020036824号-8   联系邮箱:562 66 29@qq.com