⭐️盼君,一个会编程的小姐姐!
大家好,我是盼君。目前专注于AI编程+RPA+AI智能体的开发,致力于将前沿技术转化为实际生产力。我将持续分享各领域的小工具开发案例,目标至少实现100个!
案例分享:图片压缩工具(1/100)
今天使用Cursor开发了一个超好用的的图片压缩工具,最终的效果就像下面这样啦!
如果没有AI编程,我绝对做不出来这么棒的软件!也绝对没有这么快的速度!
当然,在大神们的眼中我的速度并不算快,但是对于我个人来说,足够好了~
现在就来给大家分享一下,整个开发的过程。
灵感来源
最近在学习一个项目——《AI表情包》,将做好的表情包上传到微信表情开放平台。然而,平台对于表情包的图片尺寸、文件大小,都有要求。
然而,我用豆包生成的图片,尺寸和大小都不符合。
那么图片到底怎么压缩呢?我其实有个秘密网站,那就是 compressor.io/
它的压缩速度快、效果也好。对于我平时使用量少,用用挺好,这次图片数量比较多,居然发现,它每次最多上传10张图片,每天上传最多50张图片。上传了,也还需要下载,有点麻烦。
于是便产生了【我若是可以复刻一下这个网站就好了】的念头,毕竟图片压缩,这个功能使用的还挺频繁的!
有了想法,就去行动!
打开Cursor 开始工作
于是就有了我与Cursor的漫长交流过程,这里就省去一些重复步骤,仅保留几段主要工作,让你们了解一下开发的迭代过程。
首先我让豆包写了一个版本的需求。
主要目的,就是把我天马行空的想法转换成格式化的文档,方便理解。
V1 版本开发
有了豆包生成的需求文档之后,就用 Cursor打开一个新文件夹,引用这个需求文档。
- 1
新开一个文件重写我的需求,我希望这个项目最后可以打包成exe文件,直接都用python来实现,要高级有质感(运用玻璃拟态等视觉效果),遵守设计规范,注重UI细节。图片压缩功能——1) 可以选择图片、选择文件夹,最终的效果,需要显示 压缩前的大小、压缩后的大小, 然后 由用户决定是否 保存,效果像截图所示。 use context7
当我输入指令后,Cursor就开始给我设计详细的需求文档,内容包括:项目定位、功能需求、技术方案、UI/UX设计规范 、版本与可打包行、验收标准、参考界面等。
非常详细,可操作性特别的强!不过我对于里面的细节还是有自己的想法,又与它交流了几轮,它让修改了一下需求文档的细节。
确认需求文档后,就开始让它设计了!
接下来就是Cursor的实现方案了。这里有个细节,我只提了要求,没有说“直接生成代码”,它就只会告诉我怎么做,而不会帮我做。 先看了它的方案后,确认无误,可以写“生成代码”,它就会继续进行。
它生成代码的过程是一次完成一部分功能,然后再给出下一步的建议。同意它的想法,直接写“继续实现”。
等它生成完成以后,我就可以开始运行一下这个项目了!
如果不会运行,问它怎么运行就好,按照它说的步骤去执行程序。
若是有bug,就把错误发给它,让它修改。
若是有功能不满意的地方,就把要求发给它,让它修改。
到这里,我们的初始版本其实已经完成了!
V2 版本迭代
但是这个版本满足我的需求了吗?没有!
经过实际的测试,我发现同一张图片在 compressor.io/ 和 Cursor开发的压缩图片工具中的最终效果差距太大了!于是只好进行第二轮的开发了!
Cursor 给了我一些非常有用的建议。
我根据它的建议,去做了技术栈的选择!
N 轮专业的对话之后,再次进行运行测试,再对测试的结果不满意的地方,让它进行修改。
……
如果功能没有什么问题了,我们就可以进行打包。打包过程中出现的错误,继续让它改。
好了,这里我就不写了。
V3~Vn 版本迭代
接下来的迭代过程,就属于一个专业产品经理与一个专业程序员之间的细节较量了!
比如按钮的可用性,进度条的正确性,计时器,查看图片,对比原图,优化性能等等。这里就不一一列举了。
这一块关于功能性的拉扯,我是运用到了我作为一个程序员的编程经验,指导它应该去改哪里了!
最终效果
好了,本次分享就到这里了!
⭐️关注盼君,你将发现一个有趣的世界。文章推荐