一个二把刀程序员用cursor,写的软件有收入了!

二把刀程序员用Cursor开发收费小程序

  我确实是一个二把刀程序员。为什么这么说呢?虽然我学的专业和计算机密切相关,本科研究生都是电子信息类专业,博士是计算机专业

。但是毕业后从事的工作一直不算专门写程序的,写一些芯片的协议固件,写一些和算法有关的内容。还有很多工作是写各种word、ppt。真正写的代码估计到现在也没超过一万行吧。写的代码呢,大部分也不是像通常的软件产品那样,是一个正式的安装包,或者上线的网站、小程序,主要是一些脚本类的,运行完自己看看结果。固件那些运行在芯片里面,外人也看到不到。所以我就是一个会写一些代码的计算机博士二把刀程序员!但是最近人工智能的飞速发展,让我在写程序上也开启了新篇章。

      我对新技术一直保持着好奇心,积极主动的去体验尝试各种新技术。大家都知道一两年chatgpt横空出世,大模型百花齐放,作为计算机相关的从业者自然要积极跟进。用过chatgpt写文章,也让他帮忙写过程序片段、处理数据。但是在写程序方面,直到用上了cursor才算是体会到了人工智能的威力!在cursor之前也体验过github的copilot,记得好像交过10美元。一个朋友在百度,也要了几个免费的baidu comate的注册码,用过一段时间。这两个产品可能是出现的比较早,那时候大模型能力还不够,当时主要用代码补全等功能,有帮助但有限。

图片

图片

图片

Cursor大大不同了,cursor是一个完整的基本大模型的编程工具,而不仅仅是助手(copilot)。从编程的起点,写需求文档,建目录架构它都可以帮你做,而且它能记住整个项目的上下文,理解整个项目的内容,不同文件间的修改都能帮助完成。下面我就讲一下,在cursor帮助下我写了一个小程序并上线收费的过程。

  1. 写一个简单的需求文档instruct.md

    这个需求文档也是在cursor帮助下写的,你在输入的时候,它会帮你提示一些内容,如果你接受就按tab。内容如下:

  • 一个微信小程序

  • 1.你是一个微信小程序的开发者,UI和后端都擅长

  • 2.你正在开发一个微信小程序,名为“文档密码恢复”

  • 3.小程序端需要用户从聊天中选择一个文档,点确定上传到云开发的存储

  • 同时开云开发的数据库userdoc集合中添加一条记录,记录的字段为:

  • _id: 自动生成的id

  • _openid: 用户的openid

  • crack: 用户上传文档是移除密码还是破解,true为破解,false为移除密码

  • fileid: 文档的在云开发的id

  • filename: 文档的原始文件名

  • docname: 文档的本系统文档名,不能有中文字符,程序生成,不能重复

  • createtime: 文档的上传时间,格式为yyyy-MM-dd HH:mm:ss

  • porcessed: 文档是否处理完成,true为处理完成,false为处理中(或者未能找到密码)

  • password: 文档的密码,如果未找到密码,则为空

  • filemd5: 文档的文件md5

  • 4.找到密码后,将密码返回给小程序端,小程序端通过微信消息通知用户密码找到,用户需要支付订单后,查看密码

  • 5.小程序需要具备良好的用户体验

  • 6.小程序需要具备良好的可维护性

  • 我现在已经在一个小程序目录里并选择了一个目标,你不必生成目录结构,主要帮我裁剪这个模板,修改相应文件。

    最后一句是因为我直接使用之前一个小程序修改的,没让他生成目录,实际上cursor可以帮助我们生成目录结构。

2.写程序各个部分

新建一个文件cursor就会提示:Press ctrl+K to generate code.就是按ctrl+K开始生成代码。按下ctrl+K 后出现一个指示框,这里就写上你的需求即可,可以用@引用别的文件,比如可以引用instruct.md。比如我写了“从微信聊天中选择文件,然后上传到云开发的存储,上传文件成功和失败要给用户一个反馈,另外上传成功后,重新load页面,以便显示出订单”它给我输出了以下代码:

// 上传文档

uploadDocument() {

  wx.chooseMessageFile({

    count: 1,

    type: 'file',

    success: (res) => {

      const tempFilePath = res.tempFiles[0].path;

      const timeusedasfilename = Date.now(); // 正确声明变量

      const fileExtension = res.tempFiles[0].name.split('.').pop(); // 获取文件扩展名

      // 假设上传到云存储

      wx.cloud.uploadFile({

        cloudPath: `documents/${timeusedasfilename}.${fileExtension}`, // 使用变量构建cloudPath

        filePath: tempFilePath,

        success: (uploadRes) => {

          console.log('文件上传成功', uploadRes.fileID);

          wx.showToast({ // 显示成功提示

            title: '上传成功',

            icon: 'success',

            duration: 2000

  

只贴了片段,所有代码太多了。

3.修改代码

它写出的代码也可能会有错。也可能咱们之前写的需求还不够详细,都需要进一步的修改。这时候选中要修改的代码,点击add to chat或者add to edit都可以。add to edit在本文件修改,add to chat会打开右边侧栏,修改的代码在右侧栏里,如果接受,会合并到文件。add to chat可能会修改多个文件的代码。比如我的小程序的支付按钮目前直接是一个文字,不突出,不好看,让它改一下加一个绿色背景。

图片

图片

让文字改为白色。

图片

图片

修改后的代码在变绿那一行,点接受即可。

图片

然后在小程序开发环境中就可以看到文字颜色已经变化了。

经过多次这种迭代,一个小程序就出炉了!重点来了,收费收到了多少呢?我开发的小程序是“享蓝文档密码恢复”,他的功能是用户上传加密的word、excel、pdf、rar、ppt等文件,小程序帮大家找回忘记的密码。由于小程序还处于测试阶段,收费也是按照测试价格的,每次找回成功才收0.19元

。所以,收到的费用还不多。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值