GPT-5 初战:我用 Windsurf,体验了“结对编程”式的AI开发

前言

GPT-5 刚发布的时候,大家都在刷屏赞叹,但没过多久竟然就变成各种吐槽了。

今天,我们就亲自使用 GPT-5 实测一下编程场景,看看它的效果究竟如何。

背景及任务

背景

项目依然是我们内部的协同办公平台,整个项目前端采用 Vue2 + Element UI + SpringBoot + MyBatis 实现。

任务

团队业务没有那么复杂,打算直接把财务模块,主要是应收和实收集成在协同平台内。

主要包括项目的应收管理、实收记录、开票情况,方便项目负责人和领导轻松掌握项目回款情况。

实战记录

最近呢,一直在尝试各种 AI 编程工具,借着这次机会,我们正好试试 Windsurf 新版本表现怎么样。

这次实操过程,我们采用了 Windsurf + GPT-5 的搭配,无需购买,免费版本即可使用,大家如果有需要,也可以自行上手体验下。

先说明一下,不知道是初次使用的问题,还是 windsurf 抑或 GPT-5 设计如此,整个过程比之前对话次数多。

如果有哪位同学有更好的使用建议,还望不吝指导。

由于 Windsurf Code 模式遵循先分析生成的方式,所以下面我们分为"需求分析"、"初版生成"、"优化改进"三部分进行讲述,每部分包含了多次对话。

需求分析

第1次对话

先是把自己的目标简单整理下发给 Windsurf

markdown 复制代码
## 业务
想要基于已有的项目管理,实现一套简单、好用的包括应收、实收、开票功能的财务模块。
应收记录在项目创建之后在该模块中手动新增,一个项目可以创建多条应收。
每条应收支持多次实收,应收金额全部收款后,需要明显标记完成后款。

## 界面
1. 与现有界面保持一致。
2. 实收记录与应收在一个界面,可采用右侧抽屉效果。

## 技术
1. 前端工程地址:D:\Project\scgit\sccop\sccop-vue
2. 后端工程地址:D:\Project\scgit\sccop\sccop-rest
3. 数据库:MySQL 5.7

和 Cursor、Trae 不太一样,Windsurf 没有直接生成代码,而是先进行了需求分析,有点像 kiro、SOLO 的处理逻辑。

给出了任务分解规划,并要我进行细节确认。

在这个过程中,生成了 todo-list,估计这个特性已经成为 AI 编程的最佳实践了。

第2次对话

针对 Windsurf 给出的方案,和一些细节给出意见。

markdown 复制代码
1. 数据库前缀使用pf_代表计划财务,而不是fm_,这个是文件管理缩写。
2. 币种固定 CNY、金额两位小数可以
3. 需要完整发票抬头信息
4. 付款方式采用字典,并给出字典数据sql
5. 菜单挂载"商务/应收管理"

可以看到,每次对话都会更新 todo-list,以便保证目标执行的正确性。

然后又补充了一些待确认的点。

第3次对话

再次确认新增的事项。

markdown 复制代码
1. 不需要外键依赖
2. 票据/凭证是采用 URL 存储,前端复用现有上传组件

Windsurf 总结这几步,给出了最终的任务规划。

可以看到,下一步才会进行真正的代码生成。

初版生成

第4次对话

由于前面已经确认了很多内容,这一步的指令相当简单,仅仅起到确认的作用。

复制代码
确认开始吧

按照上一步计划,先生成"应收"的后端部分。

然后说明下一步计划:

  • 实现"实收"、"开票"的后端
  • 前端页面
  • 前端API

第5次对话和第6次对话

虽然上面说下一步要把剩余的后端和前端都实现了,但实际上 Windsurf 分为 2 次才完成。

第6次对话结果如下图:

  • 建议进行联调
  • 给出一些需要确认的点
  • 更新了完成的 TODO 状态

第7次对话

为了减少后面出错的可能性,我采纳了 Windsurf 的建议,先让它自行验证一下前后端。

复制代码
验证前后端,然后确认菜单路由并进行微调

验证完成后,它还贴心地给出了功能测试用例。

第8次对话

依然是采纳建议,启动应用。

复制代码
同意启动

它竟然还分析出来,我之前前端连接的是测试服务器,并帮我改正了。

这波操作,感觉比我还了解项目呢~

由于初版的需求没有显式指定参考页面,出来的 UI 效果明显不一致。

优化改进

下面我们开始优化。

由于是改完一次确认一次,所以分了多次对话。

之后可以尝试下一起测试,合并优化。

第9次对话

复制代码
界面与"项目管理"风格不一致,请先修复该问题

这个提示词按我的理解,已经过于简单了,并且没有指定任何上下文文件,竟然也是一次优化完成。

第10次对话

bash 复制代码
弹窗样式也不一致,需要参考项目管理修改。
同时新增时项目id直接使用下拉,对接项目接口。
列表上操作样式错位,需要修复。

修改前的效果如下图,操作列明显错位。

修改后可以看到完美解决。

最让我服气的是,就凭"操作样式错位"这句大白话,它居然就精准定位到了问题,这多模态理解能力,确实到位。

第11次对话

这里发现了一个生成的缺陷。

复制代码
应收管理created方法未自动执行

修复倒是很简单,但为什么不一次性生成正确呢。

后面两次就是比较常规的修复过程了。

第12次对话

swift 复制代码
"实收/开票"两个弹窗界面参考已有UI风格,但不采用内嵌面板,并同步优化抽屉UI

第13次对话

复制代码
应收管理列表项目ID应该显示项目名称、状态应该显示value对应的文字

整个"优化改进"阶段都非常顺利,感觉它对项目上下文的'记忆'和'理解'相当到位。

结语

用下来最深的感受就是,Windsurf + GPT-5 不像在"生成代码",更像是在和一个经验丰富的同事"结对编程"。

它会主动拆任务、列TODO、提验证建议,甚至在我没提需求时,就预判了"要测的边界情况"。

虽然偶尔也会犯点低级错误(比如created方法没调用),但整体思路清晰,执行靠谱,根绝比较符合作为我们编程的"副驾"。

你的 GPT-5 实战体验如何呢?有没有遇到"神来之笔"或"离谱操作"?欢迎在评论区聊聊!

相关推荐
Mintopia13 小时前
OpenClaw 对软件行业产生的影响
人工智能
陈广亮13 小时前
构建具有长期记忆的 AI Agent:从设计模式到生产实践
人工智能
会写代码的柯基犬13 小时前
DeepSeek vs Kimi vs Qwen —— AI 生成俄罗斯方块代码效果横评
人工智能·llm
Mintopia14 小时前
OpenClaw 是什么?为什么节后热度如此之高?
人工智能
爱可生开源社区14 小时前
DBA 的未来?八位行业先锋的年度圆桌讨论
人工智能·dba
叁两17 小时前
用opencode打造全自动公众号写作流水线,AI 代笔太香了!
前端·人工智能·agent
前端付豪17 小时前
LangChain记忆:通过Memory记住上次的对话细节
人工智能·python·langchain
strayCat2325517 小时前
Clawdbot 源码解读 7: 扩展机制
人工智能·开源
王鑫星17 小时前
SWE-bench 首次突破 80%:Claude Opus 4.5 发布,Anthropic 的野心不止于写代码
人工智能