GPT5 编程实战的一些体会

经常看到有人说,那些鼓吹AI编程的自媒体,根本就没写过什么程序,也有人说,他们就是简单做了一点点测试,根本就没有做过完整作品。

嗯,别人我不知道,我敢说,我自己是真的在做产品,不是做测试,不是做原型,是真真正正的产品。当然,旧文也说过,确实到现在用户很少,收入为0,(我计划日活达到一定规模再考虑商业化的事情)不算什么有成就的事情,但毕竟是个完整的作品。

那么旧文提过

极限发布,一款零收入产品总结 在出行前,6月初发布了应该算是第三个版本,然后一个月在国内,一个月在欧洲,就没有动过任何代码,当然这中间也收集了一些反馈,比如有一些bug是之前我没有测试出来的。

8月初回新加坡,休息了两天,然后开始继续按照之前的计划升级,迭代,以及修复反馈收集到的bug问题。

这两个月AI的世界又开始快速迭代,Gpt5面世,而Claude Code也开始风光无限,抢走了很多Cursor的用户。

为了省钱,我出行的时候把cursor订阅都停了,这次回来就纠结,是继续用cursor,还是听劝改用Claude Code,其实之前我在cursor上用过最贵的Claude 4.1 opus,当时一个下午账单就爆了,后面就没敢继续用。从当时应用感觉来看,没有觉得比Claude 4.1 sonnet好多少,一些关键卡点sonnet版本没过去,opus版本也没有过去,最后还是各种输出日志,各种调试后解决的。

当然,也有朋友跟我说,你用的cursor + Claude,不是原版的claude,能力上是有差距的,这个确实我没测试,但是,还是嫌贵啊。毕竟我的产品还是0收入呢。

说个题外话,我现在也不敢说我在做一个赚钱的事情,但是跟家中领导怎么汇报呢,就当是买了一台游戏机(Mac mini开发机),每个月几十美刀的游戏订阅(Cursor开发订阅),就当是每天闷家里打游戏了,虽然也是费钱,但比起到处出去浪,还是省钱多了对吧。但如果每个月开发工具订阅200美刀,又没收入,那就有点不好交代了。

然后试试用gpt5来编程,发现还是好于预期的,虽然我看各种评测说gpt5编程不如claude,但毕竟便宜啊。

现在用gpt5已经十多天了,产品的各种新功能和特性,几乎都是用gpt5实现的,而且这次回来后,十多天的编程中,很神奇的是,没有执行过一次 git restore 。我相信真正用AI编程的人,都能理解这句话。

当然,并不是每次gpt5交付的代码都是可靠的,都是能满足诉求的,这肯定是不现实的奢求,但基本上不会改的乱七八糟,而且大部分情况下每次修改都是有一些进展的,偶尔会有原地踏步的情况,后续我会解释。

其实旧文强调过不少逻辑,这次回来也是再次强调而已,当然,我旧文强调过要氪金,但自己确实依然保守了一些,如果有老板赞助买单,我是不介意多氪金的。

零代码编程与AI沟通的一些纪要

很多内容会重复,但还是强调,这次回来使用GPT5,我的一些沟通习惯,希望这些习惯可以让程序员减少git restore的次数。这些习惯应该也不至于和GPT5沟通。

1、先让AI解释问题,规划方案,而不要直接改动。

如果遇到bug,描述后让AI去发现和解释问题,并利用自己的经验判断这个解释对不对,这时候,有可能你发现AI没有真正理解你的描述,或者解决方案过于复杂,或者规划的方案过度设计,这些都很常见,但是它只描述,你就可以纠正他,直到你觉得它应该是真正发现了问题,真正给出了合理的方案,再确认它执行,进行系统的修复或优化。

2、强调最小化改动。

我都把这个写道cursor rules里去了,并且几乎每次都要强调,最小化改动,不要过度设计,不要变更公共库和公共接口。

3、记忆更新

变更确认后要让AI更新相关文档,这些文档很多都是后续优化调整的依据文件,这些文档其实是给后续的AI产品看的。

4、用好调试日志

遇到一些卡点,AI无法明确问题,它有时候会胡说,或者给出一些离谱的规避问题的方案和建议,这时候,我的应对是,让它对这部分做更多的调试日志,其实这个日志我也不会特别仔细去看,但是我测试的时候,会大段复制它输出的日志给它,我发现这个一点也很好使,能让AI准确找到问题,而且这个可能是递进的过程,特别是你涉及多个接口,前后端,存储结构等多重配合的一些问题,可能需要不断地细化日志输出,才能最终定位和解决,要有一点耐心,我的作用就是不断测试,然后把测试输出的日志喂给AI,然后试图让AI定位问题,并最小化修复,再不行继续细化日志。

5、归一化和清理策略

很多人说AI只适合做原型,真正做工程各种垃圾,我同意,其实这个问题我也发现了,但我觉得还是可以部分解决的,(直到现在也没有彻底解决)。我会不断让AI对代码逻辑做检查,清理冗余代码,不断让它对相似功能做归一化处理,优化代码结构。虽然有时候它的解决方案不够完美,但这种策略还是可以让AI的代的可维护性延长。

这里必须说明,确实会有一些程序员发现,AI多次修改过的代码会变得复杂凌乱不堪,以至于后续再让AI修复也会变得异常艰难,甚至陷入各种空耗,AI会在一些废弃的代码和分支上浪费精力,甚至因此误入歧途。所以,不断的清理,不断的归一化,就额外重要。

归一化的意义在于,很多功能,特性的测试,其实都只需要简单的找一个场景测试就可以,因为不同场景的加载和判断逻辑是一致的。但是没有归一化的时候,你会发现就很要命,所有场景都是独立的逻辑,独立的处理流程,任何调整都要逐一去处理,然后逐一去测试,这不就疯了。

6、强调一下,自己是不写程序的程序员。

我1990年就是天津市中学生计算机竞赛二等奖,80年代末就开始接触编程,在我的职场生涯里,虽然给自己的定位不是单纯的程序员,但大部分时间都在和编程打交道。当然,最近十年,坦白说,基本上不写代码了,也基本上落伍了,很多新知识,新的架构,新的技术方案,都没跟进学习,这是真的。但AI给了我新的机会,因为它懂就行了。

虽然可以用AI做无代码编程,但是之前文章和这里上述的原则,其实很多细节,都是我自己懂程序,懂架构作为基础的。包括我会告诉AI一些简化的解决方案,而摈弃它建议的那些过于复杂的设计,包括我会从AI对问题的解读和解决方案里找到它不靠谱的地方并在执行前规避,包括我会对它输出调试日志做合理的要求,包括我会理解哪些场景可以做归一化的设计并对它做出这方面的要求。所以这是我可以驾驭AI来做项目的原因。

记住,要驾驭AI,需要你知道一些原则,软件工程的原则,信息安全的原则,效率优化的原则,AI其实真的什么都会,什么都可以帮你完成,但如果你不懂,它不会主动帮你去实现。

另外,对于新的架构,新的技术方案,特别是前端框架,确实我不懂,全是我的知识盲区,不懂没关系,前文也说过,不吝于自己做个傻瓜,多问问AI,尽量搞懂这里的一些关键点,不需要精确了解所有细节,但是一些调用关系,潜在的安全风险,性能卡点,持续维护的一些关键配置,务必要搞明白,AI真的会得过且过,它不会在意一些长远的诉求,但你不能不在乎。

那么对于很多尝试AI编程的新人,我也说过,如果你不懂编程,能不能尝试,能,没问题,大胆开始,勇敢尝试,但这个过程中,你要学习,要成长,不要觉得不懂编程挺光荣的,要在和AI的沟通中,不吝做个傻瓜来各种提问,让自己变得懂,它既是你最听话的助理,也是你最耐心的老师。如果你是技术小白,并且正在用AI做产品,几个关键知识点,你可以让AI来教你

1、理解防注入,防跨站脚本

2、数据查询效率,数据规模和查询效率的关系

3、代码可维护性,高复用,低耦合是什么意思

4、代码断点分析,高效的调试

5、自动测试策略

6、算法的时间复杂度是怎么回事,时间复杂度和资源占用的关系,为什么某些需要用合适的算法来解决。

以上,算是基本概念,直接问AI,问到自己明白为止,然后在开发过程中,相应的考虑起来。

至于复杂系统的架构,需要更多时间去理解。

我的产品这次版本升级其实架构上也是有点小复杂,对于小游戏来说是这样的。

首先我的产品是几款单机游戏,但是有个人游戏记录的回放,以及网络存储,方便换机后可以自动同步。同时游戏回放可以分享给好友,方便炫耀,但目前好像没什么人使用。(所有网络服务均基于Google系统,所以国内玩家确实基本上无法体验)

那么最近两周的升级包括如下。(以下95%基于GPT5)

1、增加了榜单功能,可以看到全球玩家不同游戏的每月排名,不过仅限最高的一些记录。同时榜单内的记录可以回放展示玩家的通关过程。

2、增加了成就系统,玩家有成就勋章。(但做的很粗糙)

3、增加了在线更新的能力,不过只限两款游戏的素材资源。可以在线更新两款游戏的资源文件。这算是一个尝试吧。

4、增加了玩家个人主页,并且有隐私开关,玩家可以选择打开,分享或关闭。(展示玩家成就和回放记录)

5、修复了一款游戏通关提交偶尔出现的bug。

6、修复了安卓系统里统计未成功加载的问题。

7、增加了网页端统计。

我的产品差不多今天封版了,明天会开始准备打包发布,不过这个过程估计也要一周左右,特别是苹果市场,审核经常会被驳回,这次估计要被迫新装一个苹果的隐私保护的框架,希望顺利吧。等发布成功了,到时候再跟读者们汇报。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值