关于新来的技术 leader 准备用 Claude code 升级现有项目

3 天前
 jinbangzhu

现有的项目背景,已经平稳运行了有接近 10 年了。所有的拓展、报表、API 等全部基于 PHP7 Laravel 5.2 进行的开发,最终目标是升级到最新的 Laravel 12

简单的使用 find . -type f -name "*.php" | wc -l 发现有接近 7500 个 php 文件。

升级的原因是老板认为版本过老,有潜在的漏洞风险。

关于新的 leader ,目测有 20 年以上的开发经验,但他几乎不懂 php ,有.net react nodejs 的开发经验,Claude code Max 忠实用户,最近又新开了几个 Max 账号给其它三位 php 开发。

目前执行到了第一步,先简单的从 5.2 升级到 5.3 试试水,让 Claude/Chat-GPT 生成了大概 12 个步骤,每个步骤都单独进行 git commit ,整体执行下来已经消耗了整月 20%的 token ,升完后遇到 bug 喂给 Claude 解决,一直反复进行。

三位同事的反馈是 Claude 升级的时候会改现有的业务逻辑,需要大量的时间去 review 代码。

各位有没有使用过 AI 来进行老项目升级的经历?

10155 次点击
所在节点    程序员
134 条回复
lhstock
3 天前
@visper 赞同,越认真的 review 花费精力不说,在老板眼里又是唱反调,成了证明 AI 能解决,和牛马没关系,不成还得背锅
pugoingdrt
3 天前
为啥不把现有业务逻辑整理出来,然后直接让 AI 用最新版本重新开发测试,业务没有问题后,迁移数据库文件进行对接
zerovoid
3 天前
升级框架版本为啥要用 AI 呢,这应该有很成熟的解决方案了吧,
新功能用 AI 去开发提高效率还能理解,
居然用 AI 去动老代码,感觉像是给自己整活。
zw1one
3 天前
这个事有意思,拿公司的钱 自己玩 ai 升级项目 最后成不成也不关我事。
成了是我的功劳,不成是 ai 的锅而且自己也涨了 ai 使用经验,挺好的。

老板愿意砸钱给你们霍霍,就尽情霍霍呗。比做业务需求开发好玩多了。
qianyeyixi
3 天前
建议跑路,哪来的逗比? 7000+文件的项目 是来搞笑的吧 先把锅分掉,分不掉赶紧跑,不然新 leader 就该给你上压力了
oops1900
3 天前
平时就该维护升级……我们 Laravel 项目也运行了 6 年,基本都是追着次新版升级。
littleG
3 天前
前几天刚看了相关文章和评论,说的就是 AI 并没有提升多少工作效率,相反需要工程师花大量的时间和精力对提交的代码进行质量审查和修改。

而对于这种古董级工程,能平稳运行已经非常不错了,靠它进行整体升级重构……不如重新再另起炉灶开发一个了。
盲猜一下: 最后就是简单改一部分,然后技术 leader 向老板汇报 “取得重大成功”;出问题了的话怎么办?拉一个开发祭旗
strive
3 天前
拆分出来拿一小部分业务升级,积累升级的经验,再扩大升级吧;怎么也不可能一次性升级完呐
aonshuy
3 天前
先把 tech leader 开了,安全漏洞说安全的,不去面对漏洞而是追新技术,新技术就没漏洞吗,活在梦里?
xufei0913
3 天前
可以采用分阶段升级方案。比如在我的 java 项目中,将项目的 Spring Boot 从 2.x 升级到 3.x 时,第一阶段可直接将 Java 从 8 升级到 17 ,因为 Spring Boot 2.x 支持 Java 17 ,这样就无需逐级升级。第二阶段再从 Java 17 升级到最新版本和 Spring Boot3.x
canteon
3 天前
用 krio ,我觉得能解决。看起来用模型,怎么用最佳方式,就知道模型哪个牛逼,别改了离职吧
bestwaytowait
3 天前
太瞧得起 AI 了。。。。一点点做还有戏
kyrieIvring
3 天前
md 写的怎么样,写的不行就很费事情。
dingyaguang117
3 天前
大家也太瞧不起 AI 了,我感觉应该问题不大, 可能会有少量 Bug 。 主要需要有一个完善的测试用例。 不过看 LZ 公司这种万年不升级的,估计也没啥测试用例。
zuosiruan
3 天前
期待 op 主一个后续,可千万别没了后续啊
bbbblue
3 天前
@xufei0913 其他的不一定有 java 这么好的兼容性.... java8 到 21 都没太大问题(除非大量反射 jdk/类库的 internal 实现) sb2 到 3 我之前升过除了 jaktraEE 改包名 几乎没破坏性更新

特别 php 项目 前端构建一般也在一起。。。那就更恐怖了 前端的东西构建工具都迭代了多少了😂 搞不好他们的还是 gulp 新的基本都是 vite 这个都够吃一壶了。。。

这个难度 估计和让你将几千个 java 文件的 SSH+JSP 项目升级到 spring boot+vue 有的一拼😂😂😂😂
aarontian
2 天前
只能说 AI 没那么强,这事性价比过低
xmdbb
2 天前
指向性那么明显,倒不如自己投喂 larvel 每个版本更新信息和 PHP 的,然后再跑;
接着再投喂业务文档和相关接口文档,让 AI 去 review ,review 结果不确定的记录转人工。
lizuoqiang
2 天前
重构一时爽
ccfly
2 天前
@dingyaguang117 你也太看得起 ai 了。。。。这种跨很多个大版本的升级 你让精通的人来搞都很难搞 何况对业务一无所知的 ai

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1167789

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX