CodeGeeX诀窍:智谱出的 AI 编程助手——VS Code/JetBrains 插件,国内能用。
作为智谱出品的AI编程助手,CodeGeeX在VS Code和JetBrains上都能跑,关键是国内直接联网就能用,不用折腾网络。用了大半年,踩过坑也摸索出一些真正能提升效率的玩法,今天把压箱底的技巧分享出来。
接手祖传代码时最头疼的就是看不懂业务逻辑。很多人还在手动逐行读代码,其实CodeGeeX的代码解释功能比你想的更强。
选中一段代码,右键选择「解释代码」,它会生成中文注释。但技巧在于:不要只解释一个函数,而是选中整个模块或文件的核心逻辑段。比如一个300行的数据处理类,全选后让它解释,它会给出整体架构和关键流程,比逐段解释更清晰。
更进阶的用法:在解释结果后追加提问「这个函数依赖哪些外部服务?」或「这段代码的异常处理逻辑是什么?」。CodeGeeX会基于刚才的上下文继续回答,等于你有了一个随时待命的代码导师。
常规做法是先写代码再生成注释,但CodeGeeX支持注释生成代码。写单元测试时,这个功能特别好用。
比如你要测试一个订单金额计算函数,不用先写测试代码。直接写注释:
// 测试:输入金额100,折扣率0.8,期望输出80
// 测试:输入金额0,折扣率0.5,期望输出0
// 测试:输入负数金额,期望抛出异常
然后按快捷键触发代码补全,CodeGeeX会直接生成对应的测试代码。重点是注释要写具体边界值,越详细生成的代码越准。实测比先写测试函数再补全快3倍。
CodeGeeX的代码补全依赖上下文,但很多人不知道注释里的信息也会被它读取。想生成特定命名的变量或函数,直接在上一行注释里写出来。
举个真实场景:你要写一个从Redis缓存中获取用户信息的函数。先写注释:
// 从缓存中获取用户信息,key格式为user:{userId}
然后开始写函数体,CodeGeeX会自动生成getUserFromCache、cacheKey这类命名,甚至帮你拼好Redis的key模板。这比让它猜你的命名习惯靠谱得多。
接手代码时经常遇到a、b、tmp这种变量名,手动改费时又容易漏。CodeGeeX的代码解释功能可以帮你理解变量含义,然后配合IDE的重命名功能批量替换。
操作流程:选中变量所在函数,用代码解释理解逻辑。比如它告诉你a实际上是userAge,b是discountRate。然后右键变量名选择「重命名」(VS Code是F2),输入新名字,IDE会自动改所有引用。
关键技巧:先解释再重命名,避免改错业务逻辑。改完后可以再用一次代码解释确认语义正确。
CodeGeeX支持一次性生成多行代码,最适合生成配置文件、API接口文档、数据库表结构这类重复性高的内容。
比如你要写一个Nginx配置,不用一行行敲。直接写多行注释:
# Nginx配置:反向代理到本地3000端口
# 配置静态文件缓存
# 添加CORS头
# 限制单个IP每秒100次请求
然后换行触发补全,CodeGeeX会生成完整的server块。如果生成的配置不符合预期,在注释里补充具体参数,比如# 缓存时间设置为1小时,它会自动调整。
这个方法也适用于生成Dockerfile、docker-compose.yml、甚至是Swagger API文档的初始模板。