.NET开发工作效率提升利器 - CodeGeeX AI编程助手
前言
2022年6月,随着GitHub Copliot正式面向大众发布。让许多开发者都感受到了AI辅助编程工具的魅力所在,Copilot实现了帮助开发者大大提高了编程开发效率,让程序员朝九晚五成为可能。Copilot近乎是完美的,但还是由于种种原因(比如需要魔法上网、需要花钱购买使用等)使得不少人开发者想要找到一款免费且功能强大的AI编程辅助工具,因此CodeGeeX来了。虽然说CodeGeeX没有Copilot那么强大、那么智能,但是在一定的程度上还是能够帮助我们提高不少工作开发效率的。假如您有更好的、免费的、好用的AI编程助手推荐,欢迎在评论区留言。
什么是CodeGeeX?
CodeGeeX是一款基于大模型的全能的智能编程助手。它可以实现代码的生成与补全、自动添加注释、代码翻译以及智能问答等功能,能够帮助开发者显著提高工作效率。CodeGeeX支持主流的编程语言,并适配多种主流IDE。
CodeGeeX2 模型
更强大的多语言代码生成模型:https://github.com/THUDM/CodeGeeX2
CodeGeeX2 是多语言代码生成模型 CodeGeeX (KDD’23) 的第二代模型。不同于一代 CodeGeeX(完全在国产华为昇腾芯片平台训练) ,CodeGeeX2 是基于 ChatGLM2 架构加入代码预训练实现,得益于 ChatGLM2 的更优性能,CodeGeeX2 在多项指标上取得性能提升(+107% > CodeGeeX;仅60亿参数即超过150亿参数的 StarCoder-15B 近10%)。
支持的语言

支持的主流IDE

到这里有的同学就会说了我是开发.NET的不支持Visual Studio我要怎么体验呢?告诉你一个好消息,现在使用Visual Studio Code开发.NET也是很香的哦,具体Visual Studio Code开发.NET环境配置可以参考我的这篇文章:Visual Studio Code安装C#开发工具包并编写ASP.NET Core Web应用
CodeGeeX的优势
- CodeGeeX不需要魔法上网即可顺畅使用。
- CodeGeeX插件对个人用户完全免费。
- CodeGeeX支持主流的编程语言,并适配多种主流IDE。
- CodeGeeX对中文的支持非常友好,也可以给代码逐行添加代码注释且有详细的中文官方文档。
CodeGeeX VS Code插件安装
CodeGeeX 同样拥有 VS Code 插件,不同于 GitHub Copilot 他是免费的。GitHub Copilot VS Code 插件在技术上是免费的,但是只针对认证的学生,老师和相关开源项目的维护者。对于其他用户则是以月租10美元或年租100美元的形式订阅付费。CodeGeeX 插件不需要任何上述条件,你所需的仅仅是进入插件商店进行下载安装即可使用。
1、VS Code安装插件

2、首次需要注册账号
注册地址:https://codegeex.cn/auth#signup

3、登录账号



首先创建一个.NET控制台应用HelloCodeGeeX
1、打开VS Code,点击VS Code菜单栏里的终端=>新建终端


2、创建一个.NET 控制台应用程序: HelloCodeGeeX 命令如下:
dotnet new console -n HelloCodeGeeX
具体作用如下:
dotnet new console:这部分表示使用dotnet命令行工具的new命令来创建一个新的项目,类型是控制台应用程序。-n HelloCodeGeeX:这部分表示给新创建的项目指定一个名称,此处名称为HelloCodeGeeX。
通过执行该命令,将会在当前路径下创建一个名为 HelloCodeGeeX 的新控制台应用程序项目。这个项目将包含一个初始的主程序文件,可以用于编写和执行简单的命令行程序逻辑。

3、打开控制台程序编译查看效果
运行命令:
dotnet run

代码生成与自动补全
1、隐匿模式
该模式的工作方式与代码生成工具相同,它查看你以前的代码或代码注释,并为你生成下一行代码。这里最好的部分是它不会干扰你的代码,仅在你上次键入以来已有3秒钟的情况下建议代码,而建议的代码则以占位符的形式,仅在你按 Tab 键时才会实现。
通过注释自动定义用户状态枚举


定义一个C#用户类


实现一个C# MD5字符串编码的公共方法


2、交互模式
CodeGeeX 插件的交互式模式也具有代码生成的元素,载入该模式仅需要按下 Ctrl+Enter激活,你的VS Code 会分成两个版面。一个版面编写正常代码,另一个版面显示建议的代码片段,你可以使用右边建议的代码如何就会自动添加到左边实际文件中。



代码注释(再也不担心看不懂源码了)
在开发过程中,经常会遇到一些难以理解的代码并且也没有注释,CodeGeeX提供了一个自动添加注释的功能(Add Comment),让你能够快速熟悉并且理解代码。
完全没有注释:

自动添加代码注释:


代码转换
将JS代码转换成C#:


智能问答(免费GPT使用)


最后总结
以下这段文案来源于CodeGeeX智能问答!
CodeGeeX 是一款功能强大的AI编程助手,它可以根据用户的输入和要求提供适当的答复和支持,从而提高程序员的效率。对于程序员来说,CodeGeeX 可以帮助他们解决各种编程问题,例如代码的复制粘贴、自动添加注释、代码翻译以及智能问答等。通过使用 CodeGeeX,程序员可以减少花费在查找解决方案和编写代码上的时间,从而提高工作效率。然而,对于个人用户来说,CodeGeeX 的使用可能会受到一些限制,例如注册账号、登录限制等。因此,在使用 CodeGeeX 之前,请确保了解其使用规则和限制。总之,CodeGeeX 是一款功能强大的AI编程助手,它可以帮助程序员提高编程效率。对于个人用户来说,在使用 CodeGeeX 之前,请确保了解其使用规则和限制。

相关地址
CodeGeeX官网地址
https://codegeex.cn/zh-CN?article=0001
VS Code插件安装地址
https://marketplace.visualstudio.com/items?itemName=aminer.codegeex
参考文章
https://segmentfault.com/a/1190000043116653
https://zhuanlan.zhihu.com/p/606183277
加入DotNetGuide技术交流群
1、提供.NET开发者分享自己优质文章的群组和获取更多全面的C#/.NET/.NET Core学习资料、视频、文章、书籍,社区组织,工具和常见面试题资源,帮助大家更好地了解和使用 .NET技术。
2、在这个群里,开发者们可以分享自己的项目经验、遇到的问题以及解决方案,倾听他人的意见和建议,共同成长与进步。
3、可以结识更多志同道合的开发者,甚至可能与其他开发者合作完成有趣的项目。通过这个群组,我们希望能够搭建一个积极向上、和谐友善的.NET技术交流平台,为广大.NET开发者带来更多的价值。
.NET开发工作效率提升利器 - CodeGeeX AI编程助手的更多相关文章
- 干货:用好这13款VSCode插件,工作效率提升10倍
文章每周持续更新,原创不易,「三连」让更多人看到是对我最大的肯定.可以微信搜索公众号「 后端技术学堂 」第一时间阅读(一般比博客早更新一到两篇) 大家好我是lemon, 马上进入我们今天的主题吧. 又 ...
- 最香远程开发解决方案!手把手教你配置VS Code远程开发工具,工作效率提升N倍
文章每周持续更新,原创不易,「三连」让更多人看到是对我最大的肯定.可以微信搜索公众号「 后端技术学堂 」第一时间阅读(一般比博客早更新一到两篇) 今天和大家分享远程开发工具,分享一下我平常是如何用 V ...
- Python GUI开发,效率提升10倍的方法!
1 框架简介 这个框架的名字叫 PySimpleGUI,它完全基于Python语言,能非常方便地开发GUI界面,代码量相比现有框架减少50%到90%.并且,它提供了极为友好的Python风格的接口,大 ...
- 工作效率提升之Eclipse篇(1):干掉烦人的xml文件的validation
每次启动maven项目,都会有一堆烦人的xml文件的validation,一旦网络较慢,项目重新启动的时候,这些多余的验证纯属浪费时间. Eclipse上取消validation的方法: 1.菜单[W ...
- 开发谷歌浏览器插件会上瘾,搞了一个JSONViewer,一个页面格式化多条JSON,提升工作效率
最近写了一个谷歌浏览器插件(Chrome extension),拿出来分享下,希望能提升大家的工作效率. 一.背景 先说痛点:日常开发中,经常需要不停的把接口输出的JSON拷贝到在线JSON格式化页面 ...
- 动手使用ABAP Channel开发一些小工具,提升日常工作效率
今天的故事要从ABAP小游戏说起. 中国的ABAP从业者们手头或多或少都搜集了一些ABAP小游戏,比如下面这些. 消灭星星: 扫雷: 来自我的朋友刘梦,公众号"SAP干货铺"里的俄 ...
- atitit.提升软件开发的效率and 质量的那些强大概念and方法总结
atitit.提升软件开发的效率and 质量的那些强大概念and方法总结 1. 主流编程中三个最糟糕的问题 1 1.1. 从理解问题后到实现的时间很长 1 1.2. 理解和维护代码 2 1.3. 学 ...
- atitit.提升研发效率的利器---重型框架与类库的差别与设计原则
atitit.提升研发效率的利器---重型框架与类库的差别与设计原则 1. 框架的意义---设计的复用 1 1.1. 重型框架就是it界的重武器. 1 2. 框架 VS. 库 可视化图形化 1 2.1 ...
- [翻译] 使用 Visual Studio 2019 来提高每个开发人员的工作效率
[翻译] 使用 Visual Studio 2019 来提高每个开发人员的工作效率 原文: Making every developer more productive with Visual Stu ...
- 推荐几个Mac插件帮你提升工作效率
下面这篇文章是小编看到的很好的文章,分享给大家,小编前几天也整理了很多mac专题文章.更多专题,可关注[磨人的小妖精],查看我的文章,也可上[风云社区 SCOEE],查找和下载相关软件资源. (一)综 ...
随机推荐
- HTTP请求的几种方式
1.HTTP请求简介[1] HTTP(Hypertest Transfer Protocol)是用于传输像HTML这样的超文本文件的应用层协议.它被设计用于WEB浏览器端和WEB服务端的交互,但也有其 ...
- 【建议收藏】Log4j配置详解
大家在日常开发中必然会使用到日志组件,Log4j是Java方向上比较常用的日志组件,今天给大家分享下Log4j支持的配置项,强烈建议收藏,以便配置时查看 #展示log4j各种配置,私有部分见文件中注释 ...
- List转为Map
List转为Map 1.业务需求,需要将List<SysSetting>转为Map SysSetting是一个对象 @Data @TableName("t_sys_setting ...
- vue前端预览pdf并加水印、ofd文件,控制打印、下载、另存,vue-pdf的使用方法以及在开发中所踩过的坑合集
根据公司的实际项目需求,要求实现对pdf和ofd文件的预览,并且需要限制用户是否可以下载.打印.另存pdf.ofd文件,如果该用户可以打印.下载需要控制每个用户的下载次数以及可打印的次数.正常的预览p ...
- 离线安装mysql报错解决方法:/usr/sbin/mysqld: error while loading shared libraries: libaio.so.1: cannot open sha --九五小庞
Linux:centos 7.6 64位 mysql:5.6使用离线方式安装:rpm -ivh --nodeps mysql* ,执行 systemctl start mysqld.service发现 ...
- IOS开发-UIImageView基本用法
UIImageView是iOS中用于显示图像(图片.gif.svg等)的视图. 它的主要功能有: 1. 显示图片UIImageView可以通过image属性显示一张UIImage类型的图片.可以是本地 ...
- 数据挖掘18大算法实现以及其他相关经典DM算法:决策分类,聚类,链接挖掘,关联挖掘,模式挖掘。图算法,搜索算法等
数据挖掘18大算法实现以及其他相关经典DM算法:决策分类,聚类,链接挖掘,关联挖掘,模式挖掘.图算法,搜索算法等 算法码源见文末 1.算法目录 18大DM算法 包名 目录名 算法名 Associati ...
- Python与MySQL如何保持长连接
Python与MySQL如何保持长连接 介绍 在python后端开发中,时常会与数据库交互,重复的断开.连接 会大大消耗数据库资源. 所以一般都是定义全局变量,来弥补这个缺陷. 但是 Python 与 ...
- 【FAQ】关于CP反馈的联运应用的常见结算问题小结
问题一:为什么在"我的账户">>"收益"里面的金额和支付报表中的金额对不上 ? 关于联运类应用付费产品在华为平台上结算问题,您可以详细参考一下&qu ...
- Raw数据相关概念
什么是"RAW"? 维基百科的字面解释是:原始图像文件包含从数码相机.扫描器或电影胶片扫描仪的图像传感器所处理数据.RAW文件包含创建一个可视图像所必须的相机传感器数据信息. 通俗 ...