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又来了,程序员会失业吗?程序员本来就焦虑,最近似乎越来越焦虑了。在Copilot问世时,我感觉自己退化
-
宏创控股:截止2022年12月20日股东人数为34,805宏创控股(002379)12月21日在投资者关系平台上答复了投资者关心的问题。投资者:你好,请问截止12月20日最新股东人数是多少,谢谢您宏创控股董
-
董战峰:实现“双碳”目标 加快健全中国ESG体系-天天消息12月20日,在新京报零碳研究院2022绿色发展峰会上,生态环境部规划院政策所副所长董战峰发表了题为“加快健全中国ESG体系构建现代企业绿色治理
-
艾紫馨:黄金如期震荡下行 原油或小回调后上行前言:不惜光阴过时悔,黑发不学白发悔。酒色赌博致祸悔,安不将息病时悔。官行贿赂致罪悔,富不勤俭贫时悔。不孝父母老时悔,遇难不帮有事悔
-
销量占比达38.33% 重庆11月新能源渗透率创新高 世界速看12月20日,来自重庆市汽车商业协会数据显示,重庆市场狭义乘用车11月份销量为1 185万辆,销量不及预期。但值得一提的是新能源汽车仍逆势而上,
-
*ST海伦(300201.SZ)股东美通公司未减持股份 提前终止减持计划|环球快资讯智通财经APP讯,*ST海伦(300201 SZ)发布公告,公司于今日收到股东MEITUNG(CHINA)LIMITED(简称“美通公司”)出具的《关于提前
-
绿亨科技(870866)12月19日主力资金净卖出46.88万元-环球快播报截至2022年12月19日收盘,绿亨科技(870866)报收于6 47元,下跌3 29%,换手率1 36%,成交量0 68万手,成交额446 35万元。12月1
-
中钨高新:12月16日融券卖出金额55.58万元,占当日流出金额的0.77% 世界速看料同花顺数据中心显示,中钨高新12月16日获融资买入398 18万元,占当日买入金额的8 58%,当前融资余额7805 69万元,占流通市值的0 54%,超过历史
-
许昌经济技术开发区消防大队多形式开展消防宣传活动为大力营造辖区消防安全宣传氛围,预防各类火灾事故的发生。连日来,许昌经济技术开发区消防救援大队结合实际,以提高公众消防安全知晓率为目
-
世界最新:曝里弗斯将继续担任76人主帅 今夏球队升级阵容曝里弗斯将继续担任76人主帅今夏球队升级阵容,道格·里弗斯,76人队,热火队
-
达诚基金督察长覃高离任 董事长宋宜农代任督察长|焦点报道中国经济网北京12月16日讯今日,达诚基金管理有限公司公告称,公司督察长覃高因个人原因离任,董事长宋宜农代任公司督察长。宋宜农历任长盛基
-
cma是什么证书?含金量如何?-世界即时CMA是由美国管理会计师协会推出的美国注册管理会计师专业认证制度,其含金量较高,与美国注册会计师(USCPA)、金融特许分析师(CFA)一起并称
-
本周盘点(12.12-12.16):航发科技周跌2.11%,主力资金合计净流出766.05万元 环球焦点截至2022年12月16日收盘,航发科技(600391)报收于18 12元,较上周的18 51元下跌2 11%。本周,航发科技12月14日盘中最高价报18 94元。12月16
-
盘龙药业董秘回复:公司全资子公司医药股份和控股子公司博华医药均通过国家药品经营质量管理规范认证 微速讯盘龙药业(002864)12月16日在投资者关系平台上答复了投资者关心的问题。投资者:公司的配送业务发展如何,在陕西及国内的排名怎样盘龙药业董秘
-
11月房价继续下跌,12月美联储再加息,我国第四次降息会来吗?11月房价继续下跌,12月美联储再加息,我国第四次降息会来吗?
-
联系批发商 开展大收储 叶县积极帮助菜农解决卖菜难自11月7日开始,叶县果蔬产业协会在叶县蔬菜产业发展中心的指导下,积极开展冬季蔬菜储藏活动。近段时间以来,因各地多点发生的疫情,叶县部分
-
环球看点!科伦药业(002422)12月14日主力资金净买入1950.17万元截至2022年12月14日收盘,科伦药业(002422)报收于23 07元,下跌2 7%,换手率1 48%,成交量16 59万手,成交额3 87亿元。
-
公募REITs创新花样多 险资最爱配置两只REITs基金即将解禁,扩容比例均超过100%。市场担忧扩容会加大供给,引起市场调整。市场反应不一,不过多数观点认为,REITs刚刚起步,未来
-
长安价格 「长安单排新车价格」-环球新资讯单排长安皮卡价格在4万左右,主要在乐山地区-4 5万左右。所有长安购车:总价大概是预计购车费用:查看详情。四川彭州哪里可以买到型号为SC1022BB
-
新股公告 | 卫龙(09985.HK)香港公开发售获约15.3倍认购 发售价为每股10.56港元卫龙(09985 HK)公布配发结果,该公司全球发售9639 7万股,其中香港发售2891 92万股,国际发售6747 78万股,截至本公告日期,超额配售权未获行
-
国联股份(603613.SH):实控人刘泉、钱晓钧已累计增持2997.06万元的公司股份-看点格隆汇12月13日丨国联股份公布,公司于2022年12月13日收到控股股东及实际控制人刘泉、钱晓钧的通知,其通过上海证券交易所交易系统以集中竞价
-
每日热闻!异动快报:元成股份(603388)12月13日9点33分触及跌停板12月13日盘中消息,9点33分元成股份(603388)触及跌停板。目前价格11 85,下跌10 02%。其所属行业基础建设目前上涨。领涨股为乾景园林。该股为新
-
讯息:金风科技: 关于转让全资子公司股权后被动形成财务资助的公告金风科技:关于转让全资子公司股权后被动形成财务资助的公告
-
郑州慈善总会集中开展“关爱你我他(她)• 温暖千万家”行动近期,省委、省政府决定于2022年11月下旬至2023年春节在全省范围内集中开展“关爱你我他(她)?温暖千万家”行动。省慈善联合总会近日专门...
-
焦点!今年的赢家是对冲基金,明年的呢?对冲基金能够产生与市场走势相关性较小的回报。更重要的是,特定的对冲基金策略实际上带来了正回报。蒙法雷德表示,通过使用期货和衍生品来降
-
当前时讯:兴业证券:海外市场加息政策仍是香港市场估值及基本面重要关注点(原标题:兴业证券:海外市场加息政策仍是香港市场估值及基本面重要关注点)证券时报网讯,兴业证券指出,受益于政策预期及流动性提升,港交
-
国企改革板块12月7日跌0.63%,深深房A领跌,主力资金净流出87.38亿元12月7日国企改革板块较上一交易日下跌0 63%,深深房A领跌。当日上证指数报收于3199 62,下跌0 4%。深证成指报收于11418 76,上涨0 17%。
-
股票行情快报:铁流股份(603926)12月6日主力资金净卖出179.76万元_每日视讯截至2022年12月6日收盘,铁流股份(603926)报收于10 01元,下跌0 89%,换手率0 67%,成交量1 39万手,成交额1394 35万元。12月
-
3·15晚会曝光的“土坑酸菜”取消供应商资格 这些加工食品应少吃加工食品虽然为生活提供方便而且非常美味,不过也存在着一些健康隐患。有些加工食品生产卫生简直堪忧,甚至会用劣质或过期的原材料,以至于
-
睡前刷手机为什么睡不着?电子设备发出的蓝光抑制褪黑素合成近日一项调查显示,睡前玩手机8分钟,会让大脑持续兴奋1小时。医学研究发现,视网膜的内生感光视神经细胞只要受到蓝光8分钟刺激,就会让身