【IDEA+通义灵码插件】实现属于你的大模型编程助手

简介: 【IDEA+通义灵码插件】实现属于你的大模型编程助手

1.前言

大模型到底该以一种什么方式落地,从而嵌入我们的工作当中,助力我们工作效率的提升,其实最好的方式也许就是虚拟助手的方式,就像钢铁侠的"贾维斯"一样,随叫随到能回答问题,能自动的解决一些问题。

阿里开源出了自己的编程大模型“通义灵码”之后,我们可以通过IDEA插件的方式轻松打造一个自己的编程“贾维斯”。

2.下载安装

直接去插件市场里面搜索TONGYI Lingma就可以搜索出对应插件:


安装好之后需要我们用自己的阿里云账号来登录,点击登录会转跳登陆界面,用支付宝或者淘宝扫码即可:

登录完成后IDEA的面板会变成这样:


这样我们就有了自己的编程“贾维斯”。

它具体能做什么?已经写的很清楚了:

接下来我们就来感受一下这些功能。

3.解释代码

解释代码,这功能就太好用了。我说几种情况,大家要是中招的,可以把"真实"二字打在评论区里。


情况一:


祖传代码我相信大家目前所在的团队都会是有的,目前博主所在的团队手里就有大量的祖传代码,其中一个后端的controller类有接近一万行代码。这些沉重的“历史包袱”往往是阻碍我们开发的罪魁祸首。真不是写不出来,而是读不懂。


情况二:


作为后端的我们对前端代码其实没有那么熟悉,但有些时候我们是需要去碰一下前端代码做一些小修小改的。这种时候代码读起来真的是连蒙带猜。


情况三:


一些开源组件或框架的底层源码其实写的不一定就是很规范的,源码简直就是一片汪洋大海,很容易在里面迷路。


真实吧?ok,那找个帮手来帮我们一下就行了,交给通义灵码给我们翻译成人话就行了。


选中要翻译的代码,解释代码即可。

可以看到解释的非常准确:

当然你要是觉得它解释的不够清楚,还可以点击更详细,让它解释的更详细一点:

4.生成单元测试

但凡是对质量有一定要求的团队,在实际的生产中,单元测试是必然逃不过的一环,并且还会要求很高的覆盖率。关于单元测试博主前面有专门的文章讲解,有需要的话可以移步:

关于单元测试,是既重要又繁琐,它需要自己去手动写代码来构建测试用例,但既然是手动的活儿就有几率写的不好,覆盖不全面的情况发生。交给通义灵码,它可以自动帮我们生成单元测试。

选中我们想要生成单元测试的方法:

通义灵码会自动生成单元测试:

可以看到它生成的是junit的单元测试,同时它也提供了让我们选择其它诸如mockito之类的测试框架。

注意头上右上角的选项哈,它是可以自动帮我们生成类文件的:

来看一下它生成的单元测试对不对:

可以看到是很正确的,该用mock的方式注入JDBC,它是注入了的,改声明主启动类从而给出一个IOC环境,它也是正确声明了的。

package com.eryi.service;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.InjectMocks;
import org.mockito.Mock;
import org.mockito.junit.jupiter.MockitoExtension;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.test.context.junit.jupiter.SpringExtension;
import static org.mockito.Mockito.*;
import static org.junit.jupiter.api.Assertions.*;
@ExtendWith(MockitoExtension.class)
@ExtendWith(SpringExtension.class)
public class UserServiceTest {
    @Mock
    private JdbcTemplate jdbcTemplate;
    @InjectMocks
    private UserService userService;
    @BeforeEach
    public void setUp() {
        // 初始化测试环境
    }
    @Test
    public void testTransfer() {
        // 设置预期行为
        when(jdbcTemplate.update(anyString(), anyVararg())).thenReturn(1);
        // 调用待测试的方法
        userService.transfer();
        // 验证方法调用
        verify(jdbcTemplate, times(1)).update("update user set balance = balance - ? where id = ?", 100, 1);
        verify(jdbcTemplate, times(1)).update("update user set balance = balance + ? where id = ?", 100, 2);
        // 验证事务是否回滚
        try {
            userService.transfer();
            fail("Expected an exception to be thrown");
        } catch (RuntimeException e) {
            // 异常应该被抛出
        }
    }
}
 

5.生成注释

6.智能补全

写代码写一半补全另一半已经很强了是吧?

通义灵码还能通过注释直接生成代码,写完注释后回车,然后会智能提示出可补全的内容,按tab键可以采纳智能补全。

目录
相关文章
|
9月前
|
人工智能 自然语言处理 IDE
通义灵码正式上线 Qwen3,编程智能体马上来了!
Qwen3正式发布并开源8款「混合推理模型」,包括两款MoE模型(Qwen3-235B-A22B、Qwen3-30B-A3B)和六个Dense模型。旗舰模型Qwen3-235B-A22B在多项测试中表现出色,竞争力强。Qwen3支持两种思考模式(思考与非思考),涵盖119种语言,增强Agent能力,在BFCL评测中创纪录。通义灵码已上线相关插件,助力开发者体验AI编码能力。
1466 11
|
9月前
|
传感器 人工智能 安全
蔚来汽车智能座舱接入通义大模型,并使用通义灵码全面提效
为加速AI应用在企业市场落地,4月9日,阿里云在北京召开AI势能大会。阿里云智能集团资深副总裁、公共云事业部总裁刘伟光发表主题演讲,大模型的社会价值正在企业市场释放,阿里云将坚定投入,打造全栈领先的技术,持续开源开放,为AI应用提速。
|
7月前
|
JSON Java 数据库连接
IDEA的插件大总汇 (让你的工作效率大大提高!)
我是小假 期待与你的下一次相遇 ~
2408 5
|
8月前
|
人工智能 自然语言处理 程序员
通义灵码 2.5 版发布上线,支持 Qwen3
示例中展示了通义灵码创建贪食蛇游戏的过程,包括代码优化、Bug修复和功能改进(如游戏结束后提示重新开始)。并通过AI总结了工具的核心能力,如实时续写、自然语言生码、单元测试生成等,帮助开发者高效编码并提升代码质量。
362 10
|
8月前
|
人工智能 程序员
我的通义灵码插件没有AI程序员选项了
通义灵码插件没有AI程序员选项了
|
10月前
|
设计模式 人工智能 前端开发
通义灵码2.0 AI 程序员体验官招募活动---通义灵码评测
在大模型不断更新迭代的当下,众多大厂纷纷推出自家的 AI 编码助手。其中,阿里云的通义灵码堪称市场上最为成熟的产品之一,紧随其后的则是腾讯的 AI 助手。在近期实际项目开发过程中,我使用了通义灵码助手,其最新版本展现出了令人惊叹的强大性能。在一些模块编码任务上,通义灵码表现尤为出色,生成的代码在命名规范性、易扩展性以及易读性方面,甚至超越了大多数普通程序员。通义灵码在生成代码时,不仅会考量设计模式,遵循重构原则,还具备强大的 bug 检测与修复能力,在单元测试方面同样表现优异。接下来,本文将通过一个小游戏的实例,对通义灵码的各项功能展开测试。
301 1
通义灵码2.0 AI 程序员体验官招募活动---通义灵码评测
|
10月前
|
人工智能 JavaScript Java
如何在IDEA中借助深度思考模型 QwQ 提高编码效率?
通义灵码目前已经支持 QwQ-plus 模型,欢迎大家在【智能问答】里,选择切换模型,即可体验更小尺寸、更强性能的新模型!
391 10

热门文章

最新文章