写在前面

在之前的文章中推荐过一款你写注释,它就能帮你写代码的插件copilot

copilot写代码的能力没得说,但是呢copilot试用没几天之后就收费了

传送门:你写注释她帮你写代码

按理说这么好用,又可以提高效率的工具,收点费也理所当然

但是秉承白嫖一时爽,一直白嫖一直爽的原则(主要是我穷穷穷),又发现了一款可以平替的插件CodeGeex

一、CodeGeex简介

① 来自官方的介绍

CodeGeeX is a powerful intelligent programming assistant based on LLMs. It provides functions such as code generation/completion, comment generation, code translation, and AI-based chat, helping developers significantly improve their work efficiency. CodeGeeX supports multiple programming languages.

翻译过来大概是

CodeGeeX是一个功能强大的基于llm的智能编程助手。它提供了代码生成/完成、注释生成、代码翻译和基于ai的聊天等功能,帮助开发人员显著提高工作效率。CodeGeeX支持多种编程语言。

GitHub地址

https://github.com/THUDM/CodeGeeX2

目前在GitHub上 2.6k star 最近更新是2周前

③ 下载量

  • vscode 目前已有129k下载量
  • idea 目前已有58.7k 下载量

二、插件安装

① vscode

②idea

注: idea低版本的搜不到这个插件,小编用的是2023.01 这个版本的

安装完成后,注册一个账号即可使用

三、帮你写代码

  • ① 我们只需要输入注释回车,它就可以根据注释帮你写代码

  • tab接受一行代码 ctrl+space 接受一个单词

四、帮你添加注释

有时候,我们拿到同事没有写注释的代码,或者翻看一周前自己写的代码时。

这写得啥,完全看不懂啊,这时候就可以依靠它来帮我们的代码添加注释了

操作方法:

  • ① 选中需要添加注释的代码
  • ② 鼠标右键选择Add Comment
  • ③ 选择中文或者英文

这是没加注释的代码

public class test02 {
public static void main(String[] args) {
int count=0;
for(int i=101;i<200;i+=2) {
boolean flag=true;
for(int j=2;j<=Math.sqrt(i);j++) {
if(i%j==0) {
flag=false;
break;
}
}
if(flag==true) {
count++;
System.out.println(i);
}
}
System.out.println(count);
}
}

这是CodeGeex帮加上的注释

public class test02 {
//主方法,用于执行循环
public static void main(String[] args) {
//定义一个变量count,初始值为0
int count=0;
//循环,每次循环,计算101到200之间的值,并判断是否是因子
for(int i=101;i<200;i+=2) {
//定义一个变量flag,初始值为true
boolean flag=true;
//循环,每次循环,计算i的值,并判断是否是因子
for(int j=2;j<=Math.sqrt(i);j++) {
//如果i的值不是因子,则flag设置为false,并跳出循环
if(i%j==0) {
flag=false;
break;
}
}
//如果flag为true,则count加1,并打印出i的值
if(flag==true) {
count++;
System.out.println(i);
}
}
//打印出count的值
System.out.println(count);
}
}

基本上每一行都加上了注释,这还怕看不懂别人写的代码

五、帮你翻译成其他语言

除了上面功能外,CodeGeeX 还可以将一种语言的代码转换成其他语言的代码

操作方法:

  • ① 选中需要转换的代码
  • ② 鼠标右键选择Translation mode
  • ③ 在弹出的侧边栏中选择需要转换成的语言,例如C++C#JavascriptjavaGoPythonC 等等
  • ④ 选择转换按钮进行转换

六 小结

试用了一下,CodeGeeX 还是可以基本可以满足需求的,日常开发中提高效率是没得说了

作为我这样的穷逼,完全可以用来平替copilot,能白嫖一天是一天~

也不用当心哪天不能用了,等用不了了再找其他的呗

本期内容到此就结束了

希望对你有所帮助,我们下期再见~ (●'◡'●)

继copilot之后,又一款免费帮你写代码的插件的更多相关文章

  1. 如何让Java编译器帮你写代码

    作者:京东零售 刘世杰 导读 本文结合京东监控埋点场景,对解决样板代码的技术选型方案进行分析,给出最终解决方案后,结合理论和实践进一步展开.通过关注文中的技术分析过程和技术场景,读者可收获一种样板代码 ...

  2. 挖到一款免费好用的web报表插件

    最近公司项目需要用到报表,公司领导要求我来调研下报表工具.开始的时候了解了目前市场上功能强大,占有率高的两款报表工具,帆软报表和润乾报表,这两款报表工具功能比较强大,覆盖的行业较广,基本能满足所有的报 ...

  3. 10款免费而优秀的图表JS插件

    http://www.open-open.com/lib/view/open1406378625726.html http://www.ichartjs.com http://echarts.baid ...

  4. 2020最新IDEA插件大集合,一款能帮助你写代码的工具是多么重要

    摘要 12款为用户精心打造的Idea插件,含盖前后端,另把使用小技巧分享给大家,提高大家的码率,希望对你们有帮助! Lombok Lombok为Java项目提供了非常有趣的附加功能,使用它的注解可以有 ...

  5. 转:几款免费的图表js插件

    1,ichartjs(国产)(http://www.ichartjs.com/)  ===============强烈推荐ichartjs是一款优秀的国产开源插件,作者是王鹤,英文名taylor,毕业 ...

  6. AI写代码! 神器copilot介绍+安装+使用

    !郑重提示!!!!!!!: 正在学编程.算法的同学请千万不要依赖此插件,否则你可能甚至无法手写出一个for循环 AI帮我写代码?我帮AI写代码?庄周梦蝶?蝶梦庄周?十分梦幻. copilot在VSco ...

  7. Idea没安装几款好用的插件,怎么风骚的写代码???

    ​ 工欲善其事,必先利其器,好的工具可以提升我们的开发效率,越来越多的Java程序员从Eclipse转到了Jetbrains家的Idea.今天给大家介绍的是我常用的十几款Idea必装的插件. ​ Ti ...

  8. Windows下几款免费C/C++开发工具简介

    我相信作为编程初学者,我们都希望有好用的编程软件.这里"好用"应该至少要满足两点:1.安装简单,2.使用方便.大神移驾,对工具有特殊偏好跳过,从来不用Windows的止步.本文不做 ...

  9. 15款免费WiFi入侵破解安全测试工具

    以下是的15款免费(接近免费)的WiFi网络入侵测试工具.这些工具将帮你发现流氓AP,弱Wi-Fi密码等安全隐患,在黑客光临之前把漏洞补上. 一.Vistumbler扫描器 Kismet是一个开源的W ...

  10. 程序员们必备的10款免费jquery插件

    本周带来10款免费的jquery插件.如果你也有好的作品,欢迎分享到社区中来,在得到帮助的同时,也能与更多人分享来自你的作品. jQuery导航菜单置顶插件 - stickyUp . 在线演示 sti ...

随机推荐

  1. 2021-10-08:填充每个节点的下一个右侧节点指针。给定一个 完美二叉树 ,其所有叶子节点都在同一层,每个父节点都有两个子节点。填充它的每个 next 指针,让这个指针指向其下一个右侧节点。如果找

    2021-10-08:填充每个节点的下一个右侧节点指针.给定一个 完美二叉树 ,其所有叶子节点都在同一层,每个父节点都有两个子节点.填充它的每个 next 指针,让这个指针指向其下一个右侧节点.如果找 ...

  2. var,let,const的区别

    JS中变量的定义方式有四种 不写var,let,const--直接定义变量 a = 10; 使用var关键字定义 var a = 10; 使用let关键字定义 let a = 10; 使用const关 ...

  3. More than one file was found with OS independent path 'lib/armeabi-v7a/libflutter.so'

    今日一个flutter 整合ai到原生android 时老是提示如下错误 Caused by: com.android.builder.merge.DuplicateRelativeFileExcep ...

  4. 06、HSMS协议介绍

    本章的内容主要参考了 SECS半导体设备通讯-2 HSMS通信标准 ,外加上自己看的一些其他的文档.也加上了一些自己的理解,特此记录.若有侵权,请联系删除,谢谢. 再次特别感谢 SECS半导体设备通讯 ...

  5. 关于进程、线程、协程的概念以及Java中的应用

    进程.线程.协程 本文将从"操作系统"."Java应用"上两个角度来探究这三者的区别. 一.进程 在我本人的疑惑中,我有以下3个问题. 1.1为什么要引入进程? ...

  6. Hive执行计划之只有map阶段SQL性能分析和解读

    目录 目录 概述 1.不带函数操作的select-from-where型简单SQL 1.1执行示例 1.2 运行逻辑分析 1.3 伪代码解释 2.带普通函数和运行操作符的普通型SQL执行计划解读 2. ...

  7. 常用的Java Enum JdbcType

    常用的Java Enum JdbcType ARRAY BIGINT BINARY BIT BLOB BOOLEAN CHAR CLOB CURSOR DATE DECIMAL DOUBLE FLOA ...

  8. 【HMS Core】Health Kit云测数据接入相关问题

    ​[问题描述1] 1.由于存在IOS.android.微信小程序,计划接入"云侧数据开放服务",使用模式为我们自己的服务端去同步华为健康数据,终端通过服务端获取最新的数据. 2.在 ...

  9. Python 自动化测试的配置层实现方式对标与落地

    Python中什么是配置文件,配置文件如何使用,有哪些支持的配置文件等内容,话不多说,让我们一起看看吧~ 1 什么是配置文件? 配置文件是用于配置计算机程序的参数和初始化设置的文件,如果没有这些配置程 ...

  10. HTTP请求:requests的进阶使用方法浅析

    1 背景 上篇文章讲解了requests模块的基础使用,其中有get.put.post等多种请求方式,使用data.json等格式做为请求参数,在请求体中添加请求头部信息的常见信息,如:headers ...