使用通义灵码插件提高开发效率

目录

概述

通义灵码是阿里云开发的一个编码助手,基于AI大模型,提供代码智能生成,智能问答等功能,旨在加快编码,提高开发效率。

功能

  • 帮你续写代码
  • 帮你写代码注释
  • 帮你写单元测试
  • 解释代码
  • 生成代码
  • 代码优化
  • 答疑解惑
  • 排查异常原因

特性

  • 多语言支持:java,python,go,JavaScript等
  • 多IDE支持:VSCode,JetBrains IDES
  • 多网络环境:支持极速本地模型、云端大模型两种代码补全模型,支持一键切换,满足不同网络环境、不同补全强度的场景诉求
  • 标准版面向个人开发者免费使用,企业版面向企业用户(当前免费,支持1000个授权),面向保密单位的私有化部署
  • 不存储用户代码

安装

准备工作

  • VSCode编辑器(1.75.1 及以上)
  • JetBrains IDEs 任意一款 (2020.3 及以上)
  • 阿里云账号,注册地址:https://www.aliyun.com/

VSCode安装

IDEA安装

安装完成后,在右侧工具栏将出入同义灵码对话框入口图标,同时在编辑器右键菜单中有一个常用功能的快捷入口。如图:

使用指南

以IDEA为例

续写代码

安装插件之后,通义灵码会扫面整个项目的代码,分析并学习。当我们在编写代码的时候给出续写建议。

  • 根据注释续写
  • 根据代码上下文续写

如下示例演示了续写功能:

代码本意是通过判断 param.getAdCode() 是否有值,没有则使用param的经纬度结合行政区划电子围栏计算出param所属行政区划编码。

当我们写完注释信息"通过事件经纬度结合行政区划电子围栏进行计算"后,给出了提示.

可以通过快捷键 ALT+] 切换到其它的提示(如果它可以给出多个提示的情况下)。

可以通过快捷键 TAB 选择一个提示,此时续写完成了。

可以通过快捷键 ESC 取消提示,此时退出续写。

根据代码上下文续写:

代码注释

通义灵码实时检测我们编写的方法名称,并自动给出可能的方法注释信息

  • 当我们输入java doc 注释关键字的时候提示
  • 当我们选中一个方法,右键调出通义灵码菜单的时候选中代码注释

如下示例演示了写注释的功能:

当我们编写完方法名称和参数定义后,给出了方法注释的提示。

写单元测试

在IDEA编辑器界面右键有一个通义灵码的菜单,选中方法,点击菜单中的生成单元测试代码,将唤起对话框,并生成相关的测试代码样例,如图:

解释代码含义

选中需要被解释的代码,右键点击解释代码,将唤起对话框,并生成相关的解释结果。如图:

这个功能的好处:

  • 便于理解别人写的代码
  • 变相解决了程序员不爱写注释的问题
  • 对于特别拗口的逻辑,可以借助通义灵码进行分析

优化代码

选中需要优化的代码,右键点击生成优化建议,将唤起对话框,并生成相关的优化建议。

问答

在IDEA中安装了通义灵码插件后,右侧(maven图标位置)将有一个对话框唤起的入口,在此对话框中可以进行智能问答和搜索。

  • 智能问答类似 ChatGPT ,可以发起各种问答
  • 搜索,搜索阿里云开发者社区、github、StackOverflow中的相关内容
  • 无需离开IDE,专属的开发者搜索引擎

排查异常

仅java

当程序发生异常,控制台中的异常log中将嵌入通义灵码图标,点击图标将打开对话框,在对话框中将给出异常可能的原因,并提供相应的修复建议。如图:

此处是因为JDBC连接信息不正确导致MP自动配置发生异常。当点击图标后,通义灵码给出了分析和解决办法,并对结果提供中英翻译功能。

总结

  • 确有帮助,提高了开发人员的工作效率
  • 对于编码规范,帮助很大
  • 通义灵码也会给出错误的信息,不可全信
  • 缺点:占机器资源

引用

相关推荐
minos.cpp3 天前
《Java并发编程的艺术》笔记 —— 第一章
java·笔记·idea
怒放的生命.5 天前
Java-I/O框架08:BufferedReader、BufferedWriter、PrintWriter使用
java·开发语言·idea·i/o框架
马剑威(威哥爱编程)6 天前
IDEA中通义灵码的使用技巧
java·ide·intellij-idea·ai编程·通义灵码·通义大模型·ai 编程助手
nice666606 天前
DAO模式及单例模式
java·数据库·sql·mysql·单例模式·idea
LiberInfo6 天前
apache pdfbox 设置PDF表单域,Java生成PDF模板简单案例。
java·后端·pdf·apache·idea·去除水印·表单域
南鸢1.08 天前
IntelliJ IDEA 中上传项目到 Gitee 的完整指南
java·git·gitee·idea
黑色叉腰丶大魔王8 天前
《IDEA 使用技巧分享》
idea
nice666608 天前
初识JDBC
java·数据库·sql·mysql·idea