【无矶之谈】编码能力堪比Copilot、Cursor、GPT-国内可用的智能AI编程

本文主要是介绍【无矶之谈】编码能力堪比Copilot、Cursor、GPT-国内可用的智能AI编程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

前言简述

Copilot

Copilot 是一款由 OpenAI 推出的人工智能代码自动补全AI工具

早在2022年4月,我便写了一篇Github Copilot的申请及在Pycharm的配置和使用,那个时候我便在用AI进行编程,当时虽然用的不是很多,但也算接触了AI。

Github Copilot的申请及在Pycharm的配置和使用

学生认证注册可以免费使用半年,后续收费是19美元一个月。

不过当初我使用的时候是在OpenAI推广这个产品的时期,虽然那时我已经是工作几年的老油条了,但我还是免费使用了半年。

image-20231121110231160

比如我们公司就可以用这个编码,公司报销,嘿嘿嘿。

Cursor

Cursor是一款代码编辑器,对话式编程,这个我倒是没有写相关文章,不过我也用了一段时间,也给身边的小伙伴推荐过。

GitHub链接:getcursor/cursor: An AI-powered code editor based on VSCode

官网链接:https://cursor.sh/

image-20231121110414838

看到没,可以免费使用GPT-4,就是慢了点。

我用的时候已经是一年前了,说实话,不是很好用,操作不咋友好,有兴趣的可以自己去玩玩。

ChatGPT

这个想必大家都知道,就不过多介绍,我最早知道的时候是在2022年12月份,当时把它当做聊天助手使用,发现非常恐怖,后来大火的时候我也写了下文章。

【无矶之谈】不用任何科学小白30秒上手ChatGPT

最近Altamn被OpenAI扫地出门的事件还在持续发酵,不知道未来的ChatGPT会怎样,与之匹敌的Cluade又会如何发起攻势?我们就等着吃瓜吧。

我用GPT也有小一年了,讲真的有很多感触,我们再后文细说,先让我们今天的主角登场。

通义灵码

官网:https://tongyi.aliyun.com/lingma

通义灵码,是阿里云出品的一款基于通义大模型的智能编码辅助工具,提供行级/函数级实时续写、自然语言生成代码、单元测试生成、代码注释生成、代码解释、研发智能问答、异常报错排查等能力,并针对阿里云 SDK/OpenAPI 的使用场景调优,助力开发者高效、流畅的编码。

  • 兼容 Visual Studio Code、JetBrains IDEs 等主流 IDE;
  • 支持 Java、Python、Go、C/C++、JavaScript、TypeScript、PHP、Ruby、Rust、Scala 等主流编程语言。

image-20231121111932103

VSCode安装通义灵码

1、在VSCode中侧边栏打开扩展

2、搜索TONGYI Lingma

3、点击安装

4、重启VSCode,登录阿里云账号

5、开始享受AI编码吧。

image-20231121112417297

JetBrains系列IDE中安装通义灵码

这里我以pycharm为例:

1、按步骤点击:File -> settings -> plugins

2、如图搜索TONGYI Lingma

image-20231121104336797

3、点击安装

4、重启IDE,登录阿里云账号(会自动跳转网页登录,登录后回到IDE里面就OK了)

image-20231121132626854

image-20231121132707505

5、开始享受AI编码吧。

使用

依然是以pycharm为例。VSCode可以查看官网有详细的使用指南。

在pycharm右侧侧边栏就可以点开

image-20231121132900321

代码智能生成

当你在 IDE 编辑器区进行代码编写时,在开启自动云端生成的模式下,通义灵码会根据当前代码文件及相关代码文件的上下文,自动为你生成行级/函数级的代码建议,此时你可以使用快捷键采纳、废弃、查看不同的代码建议:

  • Tab :采纳代码建议
  • esc :废弃代码建议
  • [:查看上一个推荐结果
  • ]:查看下一个推荐结果

同时,当你在编码的过程中,也可以通过快捷键 P 手动触发生成代码建议。

快捷键表如下:

操作macOSWindows
打开/关闭智能问答窗口 LCtl Shift L
接受行间代码建议TabTab
废弃行间代码建议escesc
查看上一个行间推荐结果 [Alt [
查看下一个行间推荐结果 ]Alt ]
手动触发行间代码建议 PAlt P

自然语言生成代码

通义灵码支持两种通过自然语言描述生成代码的方式:

  1. 在编辑器中,直接通过注释的方式描述你需要的功能,直接在编辑器中生成代码建议,单击 Tab 可直接采纳 ;
  2. 在智能问答中,直接描述你需要的功能,智能问答助手将为你生成代码建议,并支持一键插入或复制代码

生成单元测试、代码注释、代码解释

当你选中的代码后,支持生成单元测试、代码注释或代码解释,有 3 种触发方式:

  1. 在编辑器中,单击右键找到通义灵码功能操作入口,单击对应功能操作;
  2. 在智能问答中,直接单击对用功能操作;
  3. 在智能问答中,使用 / 查看快捷指令,单击生成单元测试指令。

不写一行代码完成一个小程序

帮我写一个售票程序,要求:有四个售票窗口,同时进行售票,票数为0时,所有窗口关闭

image-20231121133523980

我们把代码插入到自己创建好的文件中进行运行

image-20231121133728705

还可以进行对话。

image-20231121134252180

很方便,还有非常多的功能,前面有相关介绍,这里就不一一举例了。

我使用一年AI编程后的感触

声明:谨代表个人观点!请勿代入!

AI发展日益壮大,这一年以来,有很多人抓住机遇疯狂嘎韭菜,有人抓住机遇投入AI产业,有人拿着AI写代码疯狂摸鱼…

我ChatGPT做的最多的事情就是分析代码,当我遇到看不太懂的代码我就直接复制丢给GPT,让它给我解析;当我遇到代码莫名其妙的报错,我会把报错信息丢给它,如果有必要还会把对应代码丢给他,上次排错的bug竟然是我一个变量名写错字母了,它帮我排查出来了;当我遇到我需要实现的功能无法用我现有的知识解决的时候,我会描述需求丢给它…

发现了吗?AI编程主要在干些什么?

它在为我提高工作效率,我在输入需求,它在产出内容,内容由我校验核对,成果功劳是我的。

而它目前所做到的一切,我同样也可以运用各种搜索工具找到答案,但是这样我就花费了更多的时间,而有了AI,它就是一个百科全书,自建索引,我只需要输入我想要找的大致内容,它就能给我呈现,大大的节省了我的时间,这是它在产出内容。

而如果它写的代码有问题,我需要进行判断,我可以自己修改,也可以让它继续修改,这一步就是校验核对。

最后的成果却还是属于我的,我只是运用了AI。

市面上非常多引人注目的文章是,AI将会替代人类,试问?这是需要我们操心的吗?我们操心的了吗?自己的一亩三分田耕好了吗?猪八戒说的:这不是抬别人的棺材到自己家哭吗?

AI会逐渐拉开上层和下层的技术工种,简言之,一个有想法的人想要落地一个项目,他需要人手,放在以前那就是去招兵买马,放在未来可能他只需要AI助手,不要觉得我是乱讲,而是GPT-4已经上架了这类商品。

说了这么多,其实AI目前就是你的好助手,是你没有肉体的小秘,你该学的还是要学,你要提升自身的软实力,比如解决问题的能力,检索能力,规划能力,管理能力…

所以,不需要焦虑,也不需要惶恐,我和我朋友聊的结论是,身体健康快乐活久点,未来AI大兴,刀剑神域这样的游戏就将成为现实,已来人间一趟,何不赏其芳华?

结语:

学而不思则罔,不死不学则爽。

做事要三思而后行,能不能让AI做,能不能不做,能不能下辈子做。

三百六十行,行行干破防。

天生我材必有用,我能不用就不用。

吾日三省吾身,早上吃什么,中午吃什么,晚上吃什么?

学海无涯,回头是岸。

这篇关于【无矶之谈】编码能力堪比Copilot、Cursor、GPT-国内可用的智能AI编程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/403425

相关文章

解决IDEA报错:编码GBK的不可映射字符问题

《解决IDEA报错:编码GBK的不可映射字符问题》:本文主要介绍解决IDEA报错:编码GBK的不可映射字符问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录IDEA报错:编码GBK的不可映射字符终端软件问题描述原因分析解决方案方法1:将命令改为方法2:右下jav

基于Python打造一个智能单词管理神器

《基于Python打造一个智能单词管理神器》这篇文章主要为大家详细介绍了如何使用Python打造一个智能单词管理神器,从查询到导出的一站式解决,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. 项目概述:为什么需要这个工具2. 环境搭建与快速入门2.1 环境要求2.2 首次运行配置3. 核心功能使用指

Java并发编程之如何优雅关闭钩子Shutdown Hook

《Java并发编程之如何优雅关闭钩子ShutdownHook》这篇文章主要为大家详细介绍了Java如何实现优雅关闭钩子ShutdownHook,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起... 目录关闭钩子简介关闭钩子应用场景数据库连接实战演示使用关闭钩子的注意事项开源框架中的关闭钩子机制1.

如何为Yarn配置国内源的详细教程

《如何为Yarn配置国内源的详细教程》在使用Yarn进行项目开发时,由于网络原因,直接使用官方源可能会导致下载速度慢或连接失败,配置国内源可以显著提高包的下载速度和稳定性,本文将详细介绍如何为Yarn... 目录一、查询当前使用的镜像源二、设置国内源1. 设置为淘宝镜像源2. 设置为其他国内源三、还原为官方

Maven的使用和配置国内源的保姆级教程

《Maven的使用和配置国内源的保姆级教程》Maven是⼀个项目管理工具,基于POM(ProjectObjectModel,项目对象模型)的概念,Maven可以通过一小段描述信息来管理项目的构建,报告... 目录1. 什么是Maven?2.创建⼀个Maven项目3.Maven 核心功能4.使用Maven H

Python实现word文档内容智能提取以及合成

《Python实现word文档内容智能提取以及合成》这篇文章主要为大家详细介绍了如何使用Python实现从10个左右的docx文档中抽取内容,再调整语言风格后生成新的文档,感兴趣的小伙伴可以了解一下... 目录核心思路技术路径实现步骤阶段一:准备工作阶段二:内容提取 (python 脚本)阶段三:语言风格调

shell编程之函数与数组的使用详解

《shell编程之函数与数组的使用详解》:本文主要介绍shell编程之函数与数组的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录shell函数函数的用法俩个数求和系统资源监控并报警函数函数变量的作用范围函数的参数递归函数shell数组获取数组的长度读取某下的

Android Studio 配置国内镜像源的实现步骤

《AndroidStudio配置国内镜像源的实现步骤》本文主要介绍了AndroidStudio配置国内镜像源的实现步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,... 目录一、修改 hosts,解决 SDK 下载失败的问题二、修改 gradle 地址,解决 gradle

揭秘Python Socket网络编程的7种硬核用法

《揭秘PythonSocket网络编程的7种硬核用法》Socket不仅能做聊天室,还能干一大堆硬核操作,这篇文章就带大家看看Python网络编程的7种超实用玩法,感兴趣的小伙伴可以跟随小编一起... 目录1.端口扫描器:探测开放端口2.简易 HTTP 服务器:10 秒搭个网页3.局域网游戏:多人联机对战4.

MySQL双主搭建+keepalived高可用的实现

《MySQL双主搭建+keepalived高可用的实现》本文主要介绍了MySQL双主搭建+keepalived高可用的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,... 目录一、测试环境准备二、主从搭建1.创建复制用户2.创建复制关系3.开启复制,确认复制是否成功4.同