前言
目前,大部分Cursor的分享都是以新项目举例的,大家对Cursor在处理遗留项目的能力了解不多。
本次分享,我们尝试下通过Cursor去改动一个已有的开源小游戏。
限于篇幅,Cursor处理遗留项目的相关分享会分多次进行,暂定分为以下几篇:
- 小游戏初探
- 业务系统实战
- 实践总结
项目概况
简介
本次使用的小游戏大家应该非常熟悉,小霸王系列的"坦克大战",完成度很高,支持双玩家,不同坦克类型,不同障碍物等等,对了,竟然还有音效。
前置条件
如果大家想要继续魔改,可以按照以下步骤提前准备好环境。
由于与主题不是太相关,此处简略。
- 安装Python,本机采用Python3.12版本。
- 检出项目代码。
- 配置python 虚拟环境,本机采用venv方式。
- 安装pygame,pip install pygame。
- 运行,python .\Tank.py。
运行效果:
(年代感扑面而来)
实测
项目整体了解
很多时候,我们都会迫于各种原因接手一些遗留项目,甚至这些项目辗转的最初负责人是谁都已经不知道了,更不要提完备的文档了。
提示词:
使用Chat模式交互。
新接手的项目,请帮我分析项目整体情况
响应:
分析:
Cursor对项目整体分析还是比较准确得,作为接收遗留项目后的第一次了解,最起码比一般的项目交接文档详细很多。
给出的项目分析内容包括:
- 各文件功能
- 核心逻辑
- 技术实现概要
- 快速体验指导
- 改进建议
作为经历过成员变动频繁,项目工期短的人,估计能体会到这个程度的项目分析带来的便利。
定位代码辅助理解
有些时候,遗留项目倒是不需要修改太多内容,比如,硬编码的预警阈值,这时候我们只需要AI帮我们找到相关代码并进行解释即可。
提示词:
使用Chat模式交互。
我需要把每关的敌方坦克数修改为10个,请帮我定位并分析相关代码。
响应:
分析:
代码定位没有问题,并且相关代码解释也非常到位,唯一存疑的就是代码量大起来之后正确率的问题,这个后续我会再次尝试。
自动完成功能
今天初五,新增一个特性:射击时有一定几率触发财神特效。特效采取简化实现,直接在屏幕中间显示"财神到"。
提示词:
使用Composer模式对话。
erlang
玩家坦克射击时有80%几率触发财神特效,特效效果实在屏幕中间显示"财神到"大字5秒,同时玩家生命增加到99。
响应:
分析:
最终实现了"财神特效",不过现在的AI确实还存在一些问题:
- 初次修改后,font未初始化报错,不过通过截图给Cursor,自动帮我修复了。
- "财神到"是中文,但是Cursor并未自主考虑中文显示乱码问题,需要我明确告知后才会考虑。
总结
本次分享先通过一个简单的小游戏尝试下AI处理遗留项目的能力,目前来看,虽然依然需要人工干预,但是针对小项目,帮助应该还是挺大的。
毕竟,不能期望AI一步到位,"进一步,有进一步的欢喜"。
后续,我会更换一个普通规模的业务系统再帮大家尝试一下。
本次分享搜集资料过程,找到了几个可以运行的python小游戏,大家如果感兴趣,可以公众号回复"python小游戏"获取。
初五迎财神,祝大家新的一年财运亨通,万事如意!