如何使用基于GPT-4的Cursor编辑器提升开发效率

这篇具有很好参考价值的文章主要介绍了如何使用基于GPT-4的Cursor编辑器提升开发效率。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

程序员最恨两件事情:一是别人代码不写文档,二是要让自己写文档。随着 GPT-4 的到来这些都不是问题了,顺带可能连程序员都解决了。。。
之前一直觉得 AI 生成的代码也就写个面试题的水平,小打小闹,现在时代可变了。Cursor 编辑器是 GPT-4 驱动,对接了 GitHub 的 Copilot。本文列举了几个他能完全掌控的场景,就看你慌不慌


官网: https://www.cursor.so/
如何使用基于GPT-4的Cursor编辑器提升开发效率

一、代码审查

他能看懂你的代码,并能指出错误!!!也就是说他的编程水平是高于你的!毕竟基于 GitHub 的海量代码训练出来的,Code Review 从此有了个好老师

  • 源码:我们从网上找了个常见的金额处理函数,并删掉一些边界条件看看能不能发现问题
    如何使用基于GPT-4的Cursor编辑器提升开发效率
const formatMoney = (money, symbol = "", decimals = 2) => {
  let arr = money.toFixed(decimals).toString().split(".");
  let first = parseInt(arr[0]).toLocaleString();
  let result = [first, arr[1]].join(".");
  return `${symbol} ${money.toFixed(decimals)}`;
};

formatMoney(12341234.246); // 12,341,234.25
formatMoney(12341234.246, "¥", 1); // ¥ 12,341,234.2
  • 输入指令:分析 formatMoney 函数的入参风险,中文回答
  • 效果:询问被修改的函数风险能准确回答,并给出改进方法
    如何使用基于GPT-4的Cursor编辑器提升开发效率
  • 输入指令:分析这个文件并给出优化建议
  • 效果:能清晰的识别 3 个函数的作用,并能给出建议
    如何使用基于GPT-4的Cursor编辑器提升开发效率

二、补充文档

程序员最恨两件事情:一是别人代码不写文档,二是要让自己写文档。现在这都不是问题了,在不写一行中文注释的情况下,生成完整的文档不在话下

  • 输入指令:补充这个文件的中文markdown,包含使用说明、场景说明、注意事项、代码示范等
    如何使用基于GPT-4的Cursor编辑器提升开发效率
  • 效果:markdown 渲染效果如下
    如何使用基于GPT-4的Cursor编辑器提升开发效率

三、补充单测

  • 输入指令:给上面函数补充完整的单元测试,考虑各种边界条件
    如何使用基于GPT-4的Cursor编辑器提升开发效率
  • 效果:瞬间生成单测,并能覆盖各种边界和极端情况,极大的提高代码质量
test("formatMoney should format money correctly", () => {
  expect(formatMoney(12341234.246)).toBe(" 12341234.25");
  expect(formatMoney(12341234.246, "¥", 1)).toBe("¥ 12341234.2");
  expect(formatMoney(0)).toBe(" 0.00");
  expect(formatMoney(0.1)).toBe(" 0.10");
  expect(formatMoney(0.005)).toBe(" 0.01");
  expect(formatMoney(9999999999.999)).toBe(" 9999999999.99");
});

test("fenToYuan should convert fen to yuan correctly", () => {
  expect(fenToYuan(123456)).toBe("1234.56");
  expect(fenToYuan(0)).toBe("0.00");
  expect(fenToYuan("123456")).toBe("1234.56");
  expect(fenToYuan("0")).toBe("0.00");
});

test("yuanToFen should convert yuan to fen correctly", () => {
  expect(yuanToFen(12.34)).toBe("1234");
  expect(yuanToFen(0)).toBe("0");
  expect(yuanToFen("12.34")).toBe("1234");
  expect(yuanToFen("0")).toBe("0");
});
test("formatMoney should handle negative numbers correctly", () => {
  expect(formatMoney(-1234.5678)).toBe("- 1234.57");
  expect(formatMoney(-1234.5678, "¥", 1)).toBe("-¥ 1234.6");
  expect(formatMoney(-0.1)).toBe("- 0.10");
  expect(formatMoney(-0.005)).toBe("- 0.01");
  expect(formatMoney(-9999999999.999)).toBe("- 9999999999.99");
});

test("fenToYuan should handle negative numbers correctly", () => {
  expect(fenToYuan(-123456)).toBe("-1234.56");
  expect(fenToYuan("-123456")).toBe("-1234.56");
});

test("yuanToFen should handle negative numbers correctly", () => {
  expect(yuanToFen(-12.34)).toBe("-1234");
  expect(yuanToFen("-12.34")).toBe("-1234");
});

四、补充定义

  • 指令:补充formatMoney函数的interface
  • 效果:可快速生成 interface
    如何使用基于GPT-4的Cursor编辑器提升开发效率

五、生成通用代码

  • 目标:我们提前定义一个树状的菜单结构 tree,然后让 AI 根据字段和属性自动生成可投产面包屑组件
  • 指令:生成一个面包屑组件,入参是tree和当前路由
  • 效果:可迅速生成高质量可运行的面包屑组件,自动分析 tree 的数据格式,并生成递归查找路径的函数
    如何使用基于GPT-4的Cursor编辑器提升开发效率
const tree = [
    {
        name: '首页',
        route: '/',
    },
    {
        name: '个人中心',
        route: '/home',
        children: [
            {
                name: '我的订单',
                route: '/order',
                children: [
                    {
                        name: '未收货',
                        route: '/undo',
                    },
                    {
                        name: '已收货',
                        route: '/done',
                    }
                ]
            },
            {
                name: '我的地址',
                route: '/address',
                children: [
                    {
                        name: '首页',
                        route: '/',
                    }
                ]
            }
        ]
    }
]
const Breadcrumb = ({ tree, currentRoute }) => {
  const breadcrumbList = [];

  const findRoute = (tree, currentRoute) => {
    for (let i = 0; i < tree.length; i++) {
      const node = tree[i];
      if (node.route === currentRoute) {
        breadcrumbList.push(node.name);
        return true;
      } else if (node.children) {
        if (findRoute(node.children, currentRoute)) {
          breadcrumbList.push(node.name);
          return true;
        }
      }
    }
    return false;
  };

  findRoute(tree, currentRoute);

  return (
    <div>
      {breadcrumbList.reverse().map((item, index) => (
        <span key={index}>
          {item}
          {index !== breadcrumbList.length - 1 && ' > '}
        </span>
      ))}
    </div>
  );
};

<Breadcrumb tree={tree} currentRoute={'/home/order/undo'} />

六、总结

  • 最后来一段视频完整的回顾一下效果

    使用基于GPT-4的Cursor编辑器自动生成代码

  • 本文给出的例子其实都比较简单,真正打开生产环境的复杂业务逻辑代码照样都能分析的头头是道,这里主要是红线问题不能使用业务代码作为示范。

  • 现阶段看起辅助作用是完全没问题的,真正实现了人机结对编程,目测已经可以取代 30% 左右的重复低水平劳动。这还是在没有完整阅读业务仓库代码和 PRD 的基础上做到的,如果以公司粒度投喂更多的业务知识和已有代码,以及后面的技术升级,那能干的活的比例肯定是越来越高的。

  • AI 的奇点真的快来了,有生之年肯定是能看到这样的盛况了,是福是祸只能拥抱变化了吧!文章来源地址https://www.toymoban.com/news/detail-404668.html

到了这里,关于如何使用基于GPT-4的Cursor编辑器提升开发效率的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Linux如何使用Nano编辑器

    Nano是一个文本编辑器,适用于命令行环境下的Linux系统。它具有简单易用的特点,适合初学者和有限的编辑需求。下面是一些Nano编辑器的详细命令和操作。 1. 启动Nano 要启动Nano编辑器并打开一个文件进行编辑,可以使用以下命令: 如果指定的文件不存在,Nano会创建一个新文

    2024年02月10日
    浏览(45)
  • 如何在PowerPoint中使用LaTex公式编辑器

    TexLive官网: https://www.tug.org/texlive/ 按照如下步骤依次进行安装 1、 2、 3、 4、 5、下载下来的是一个镜像文件,将其放在纯英文文件夹下,建议为 D:LaTex ,即 D:LaTextexlive2023.iso 6、右键解压缩到当前文件夹,如下图所示 7、右击以管理员模式运行 8、弹出下面窗口后点击“修改

    2024年02月06日
    浏览(43)
  • 使用MyEclipse如何部署Descriptor (XML)编辑器?

    Descriptor (XML) Editor编辑器包含了高级的XML编辑功能,在本文中您将了解到这些编辑功能、Web XML编辑等,此功能包含在MyEclipse中可用。 MyEclipse v2023.1.2离线版下载 1. Web XML 编辑器 MyEclipse Web XML编辑器包括高级XML编辑功能,如: 语法高亮显示 标签和属性内容辅助 实时验证(当您输

    2024年02月13日
    浏览(28)
  • 如何使用 Flatpak 在 Linux 上安装 ONLYOFFICE 桌面编辑器?

    Flatpak  是一款与 Linux 发行版 无关的软件实用工具 , 可用于在 Linux 上构建和分发桌面端应用。其可帮助您安装第三方 Linux 应用程序,无需安装库或处理依赖。 ONLYOFFICE 编辑器桌面版是一款全面的办公工具,提供了文本文档、电子表格,演示文稿和表单的查看和编辑功能。它

    2024年02月15日
    浏览(35)
  • 如何使用Docker Compose搭建StackEdit编辑器并实现远程办公

    StackEdit是一个受欢迎的Markdown编辑器,在GitHub上拥有20.7k Star!,它支持将Markdown笔记保存到多个仓库,包括Gitee、GitHub和Gitea。此在线笔记工具还提供了一些便捷功能,如拖拽或粘贴上传图片、文件搜索功能,以及可切换为炫酷的暗黑主题,这些功能特别适合那些喜欢使用Mar

    2024年01月19日
    浏览(39)
  • 如何在使用Docker快速部署StackEdit并实现公网访问本地编辑器远程办公

    StackEdit是一个受欢迎的Markdown编辑器,在GitHub上拥有20.7k Star!,它支持将Markdown笔记保存到多个仓库,包括Gitee、GitHub和Gitea。此在线笔记工具还提供了一些便捷功能,如拖拽或粘贴上传图片、文件搜索功能,以及可切换为炫酷的暗黑主题,这些功能特别适合那些喜欢使用Mar

    2024年02月04日
    浏览(57)
  • 首个接入 GPT-4,曾经比 GitHub Copilot 还好用的代码编辑器,开源了!

    公众号关注 “GitHubDaily” 设为 “星标”,每天带你逛 GitHub! 上周四,GitHub Copilot X 震撼发布,将一众老牌代码编辑器打得措手不及。 但其实,Copilot X 不是第一个集成 GPT-4 模型的 AI 智能编程工具。 在它发布的一两周前,一款名为 Cursor 的代码编辑器便已开始在技术圈内被

    2024年02月09日
    浏览(70)
  • 基于语雀编辑器的在线文档编辑与查看

    语雀是一个非常优秀的文档和知识库工具,其编辑器更是非常好用,虽无开源版本,但有编译好的可以使用。本文基于语雀编辑器实现在线文档的编辑与文章的预览。 参考语雀编辑器官方文档,其实现需要引入以下文件:

    2024年02月09日
    浏览(39)
  • 如何编辑pdf?推荐福昕高级pdf编辑器

    【Note】学校要求加页并且除去数字,但是发的是pdf文件,所以找到了pdf编辑器,编辑器下载连接,以及破解我已经放在本文末尾,按照介绍的方法即可破解 这里记得更换一下路径,从c盘换到别的盘, 然后记住这个路径 编辑文本识别之后即可修改内容

    2024年02月08日
    浏览(56)
  • 基于drawio构建流程图编辑器

    drawio 是一款非常强大的开源在线的流程图编辑器,支持绘制各种形式的图表,提供了 Web 端与客户端支持,同时也支持多种资源类型的导出。 在我们平时写论文、文档时,为了更好地阐述具体的步骤和流程,我们经常会有绘制流程图的需求,这时我们可能会想到 Visio ,可能

    2024年02月10日
    浏览(72)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包