通义灵码——有了它让我的编程效率和质量直线上升!

简介: 作为一名大数据开发工程师,我每天与代码和数据打交道,享受解决复杂问题的乐趣。最近,我遇到了一位超级“码”力助手——通义灵码。它不仅是一个简单的代码补全工具,更像是一个拥有高度智慧的编程伙伴,能够理解我的编程意图,给出最合适的建议,大大提升了我的工作效率和编程体验。本文将分享如何在VsCode中安装和使用通义灵码,以及它在我的实际编程工作中发挥的重要作用。

前言

大家好,我是一名大数据开发工程师,在我实际工作当中每天与代码和数据为伍,享受着解决复杂问题的乐趣。今天,我想和大家聊聊我最近在编程之旅上遇到的一位超级“码”力助手——通义灵码。别小看这个名字,它可是我在VsCode里的新宠,帮我解决了不少头疼的问题,让我的工作效率和编程体验都上了一个新台阶。

之前也接触过一些编程辅助工具,但是感觉其实很多都挺鸡肋的,不过当我尝试了一段时间的通义灵码之后,给我的感觉完全不一样!它不仅仅是一个简单的代码补全工具,更像是一个拥有高度智慧的编程伙伴,能够理解我的编程意图,给出最合适的建议。

在编程的过程中,我们经常会遇到各种“卡壳”的情况,比如函数怎么用、API参数怎么配、代码性能怎么优化等等。这些问题如果靠自己解决,往往需要花费大量的时间和精力去查阅文档、搜索答案。但是,有了通义灵码之后,一切都变得简单多了。它就像是我的私人编程顾问,能够在我需要的时候,及时给出准确的答案和建议,让我的编程效率大大提升。

而且,通义灵码还有一个特别棒的优点,就是它能够根据我的编程习惯和项目需求,智能推荐代码片段和最佳实践。这对我来说,简直就是如虎添翼。有时候,我甚至在还没有完全明确自己的想法之前,通义灵码就已经给出了我需要的代码片段,让我可以迅速进入编程状态,不再为找不到合适的代码模板而烦恼。

所以今天也是想跟大家分享一下在VsCode中安装和使用通义灵码,以及它在我的实际编程工作中是如何发挥作用的。希望我的分享能够对你有所帮助,让我们一起在编程的道路上走得更远、更稳。

通义灵码介绍

兼容编程工具

JetBrains IDEs

  • IDE 版本:IntelliJ IDEA、PyCharm、GoLand、WebStorm、Android Studio 等 2020.3 及以上
  • 操作系统:Windows 7 及以上、macOS、Linux
  • 暂不支持的系统架构:aarch64 windows

Visual Studio Code

  • IDE 版本:1.68.0 及以上
  • 操作系统:Windows 7 及以上、macOS、Linux
  • 暂不支持的系统架构:aarch64 windows

Visual Studio

  • IDE 版本:Visual Studio 2022 17.3.0 及以上,或 Visual Studio 2019 16.3.0 及以上
  • 操作系统:Windows 10 及以上

其他场景

  • Remote SSH、Docker、WSL 等远程连接开发场景
  • VS Code 的 WebIDE,并支持 Open VSX 插件市场中下载和使用
  • HUAWEI DevEco Studio,参考 JetBrains IDEs 安装手册-方法 2:下载安装包安装后使用

不同版本功能

版本 个人基础版 个人专业版 企业标准版 企业专属版
包含功能 代码生成: 行/函数级代码实时续写 注释生成代码离线型单行补全跨文件感知能力多结果推荐智能问答:研发智能问答生成代码注释生成代码解释异常报错排查提交信息生成代码问题修复建议 代码生成:行/函数级代码实时续写注释生成代码离线模型单行补全跨文件感知能力多结果推荐智能问答:研发智能问生成代码注释生成代码解释异常报错排查提交信息生成代码问题修复建议生成单元测试代码优化本地工程问答 代码生成:行/函数级代码实时续写注释生成代码离线模型单行补全跨文件感知能力多结果推荐企业代码生成增强(Beta)智能问答:研发智能问答生成代码注释生成代码解释异常报错排查提交信息生成代码问题修复建议生成单元测试代码优化本地工程问答企业知识库问答企业管理:授权管理统计报表审计日志知识管理企业版专用推理服务限制:知识管理容量:500MB 代码生成:行/函数级代码实时续写注释生成代码离线模型单行补全跨文件感知能力多结果推荐企业代码生成增强智能问答:研发智能问答生成代码注释生成代码解释异常报错排查提交信息生成代码问题修复建议生成单元测试代码优化本地工程问答企业知识库问答企业管理:授权管理统计报表审计日志知识管理多组织管理专属 VPC 部署IP 白名单管理专有网络访问企业版专用推理服务限制:知识管理容量:5GB

安装

通义灵码是能够兼容 Visual Studio CodeVisual StudioJetBrains IDEs 等主流编程工具的,但是本次我的主要编程工具是Visual Studio Code,所以根据Visual Studio Code的方式跟大家分享。
在Visual Studio Code中安装通义灵码是非常简单的,官方也是有详细的教程,不过我也还是简单的分享一下我的安装过程
官方教程:通义灵码安装教程
帮助文档:通义灵码帮助文档
官网:通义灵码官网
image.png

准备工作

因为使用的是Visual Studio Code来安装,所以要准备好Visual Studio Code 1.68.0 及以上版本。

  • 操作系统:Windows 7 及以上、macOS、Linux;
  • 下载并安装 Visual Studio Code 1.68.0 及以上版本。

    第一种方案:从插件商店安装

    搜索扩展

    打开Visual Studio Code的扩展搜索TONGYI Lingma

image.png

点击信任&安装
image.png

点击登录

安装完成之后,在活动栏中就可以看到通义灵码的图标,然后点击图标之后进行登录,使用阿里云账号登录就可以
image.png

第二种方案:安装包安装

Visual Studio Code 的 VSIX 安装包
下载安装包之后在插件商店中点击右上角的更多,然后点击从CSIX安装就可以了,安装之后正常使用阿里云账号登录就可以

image.png

到这里就已经安装好了,就可以开启我们的智能编码之旅了!

简单使用

接下来我们来简单实用一下通义灵码,看看都能在我们编程过程中起到什么作用。

智能生成代码

  • 采纳单元测试代码建议:支持一键插入、复制、或者新建代码文件,可快速采纳生成的单元测试代码建议;
  • 更换单元测试框架:提供基于 JUnit、Mockito、Spring Test、unit test、pytest 等框架生成单元测试代码建议,在回答完成后,可以根据需要切换框架重新生成;
  • 新建文件:支持一键保存单元测试代码为新文件,方便进行查看和修改。

给出我们的要求让通义灵码帮我们根据要求生成代码
要求如下:
使用Python生成一个图书管理系统

  • 要求用户可以查看所有图书(包含图书的状态借出/空闲)
  • 要求用户可以录入图书
  • 要求用户可以借书

通义灵码给出的结果

class Book:
    def __init__(self, title, author, status='空闲'):
        self.title = title
        self.author = author
        self.status = status

    def __str__(self):
        return f"{self.title} by {self.author} - {self.status}"
class Library:
    def __init__(self):
        self.books = []

    def add_book(self, title, author):
        new_book = Book(title, author)
        self.books.append(new_book)
        print(f"图书 '{title}' 已添加到系统。")

    def display_books(self):
        if not self.books:
            print("当前没有图书。")
            return
        for book in self.books:
            print(book)

    def borrow_book(self, title):
        for book in self.books:
            if book.title == title and book.status == '空闲':
                book.status = '借出'
                print(f"您已成功借阅 '{title}'。")
                return
        print(f"图书 '{title}' 不可借阅。")
def main():
    library = Library()

    while True:
        print("\n欢迎来到图书管理系统")
        print("1. 查看所有图书")
        print("2. 录入图书")
        print("3. 借书")
        print("4. 退出")

        choice = input("请选择操作: ")

        if choice == '1':
            library.display_books()
        elif choice == '2':
            title = input("请输入图书名称: ")
            author = input("请输入作者名称: ")
            library.add_book(title, author)
        elif choice == '3':
            title = input("请输入要借阅的图书名称: ")
            library.borrow_book(title)
        elif choice == '4':
            print("感谢使用图书管理系统!再见!")
            break
        else:
            print("无效的选择,请重新输入。")

if __name__ == "__main__":
    main()

可以看到效果还是很不错的
image.png

代码解释

  • 支持重试、更详细、更简单、中文/英文解释的追问。

有时候在编程过程中遇到一些不太理解的函数也可以直接询问通义灵码,让它帮我们做出解释,并解释这段代码的作用,可以对我们编程有很大的作用,节省了很多查资料的时间
image.png
进入刚才通义灵码写出来的代码,选中library = Library()这段话,点击右键使用通义灵码进行代码解释
以下是通义灵码给出的解释:

代码解释
这段代码的功能是创建一个 Library 类的实例,并将其赋值给变量 library。假设 Library 类已经定义好,这个实例可以用来调用 Library 类中的各种方法和属性。

控制流图
由于这段代码非常简单,没有复杂的逻辑,因此控制流图也非常简单:

flowchart TD
    A[创建 Library 实例] --> B[赋值给 library]

详细解释

  1. 创建 Library 实例:调用 Library 类的构造函数,创建一个新的 Library 对象。
  2. 赋值给 library:将新创建的 Library 对象赋值给变量 library,以便后续使用。

image.png

这里展示举了一个很简单的例子,通义灵码给出了很详细的解释,在实战中遇到比较陌生的函数或者对某一段代码不解的话都可以直接让通义灵码给出回答,非常高效!

生成注释

  • 采纳代码注释建议:支持一键插入、复制,可快速采纳生成的代码注释建议;
  • 查看 Diff:单击查看 Diff 按钮,将快速唤起 IDE Diff 查看窗口,快速了解建议和源代码的变更。

直接全部选中刚才的图书管理系统代码,让通义灵码帮我们对项目进行注释,这样可以易于阅读和理解。

image.png

通义灵码给出的结果

class Book:
    """
    图书类,用于表示一本书的信息。

    属性:
    - title (str): 图书的标题。
    - author (str): 图书的作者。
    - status (str): 图书的状态,默认为'空闲'。
    """
    def __init__(self, title, author, status='空闲'):
        self.title = title
        self.author = author
        self.status = status

    def __str__(self):
        """
        返回图书的字符串表示,包含标题、作者和状态。

        返回:
        str: 图书的信息字符串。
        """
        return f"{self.title} by {self.author} - {self.status}"

class Library:
    """
    图书馆类,用于管理多本图书。

    属性:
    - books (list): 包含所有图书的列表。
    """
    def __init__(self):
        self.books = []

    def add_book(self, title, author):
        """
        向图书馆添加一本新书。

        参数:
        - title (str): 图书的标题。
        - author (str): 图书的作者。
        """
        new_book = Book(title, author)
        self.books.append(new_book)
        print(f"图书 '{title}' 已添加到系统。")

    def display_books(self):
        """
        显示图书馆中所有图书的信息。
        如果没有图书,则显示提示信息。
        """
        if not self.books:
            print("当前没有图书。")
            return
        for book in self.books:
            print(book)

    def borrow_book(self, title):
        """
        借阅一本图书。

        参数:
        - title (str): 要借阅的图书标题。

        遍历图书列表,如果找到状态为'空闲'的图书,则将其状态更新为'借出'。
        如果没有找到可借阅的图书,则显示提示信息。
        """
        for book in self.books:
            if book.title == title and book.status == '空闲':
                book.status = '借出'
                print(f"您已成功借阅 '{title}'。")
                return
        print(f"图书 '{title}' 不可借阅。")

def main():
    """
    主函数,用于运行图书管理系统的命令行界面。
    提供添加图书、显示所有图书、借阅图书和退出系统等功能。
    """
    library = Library()

    while True:
        print("\n欢迎来到图书管理系统")
        print("1. 查看所有图书")
        print("2. 录入图书")
        print("3. 借书")
        print("4. 退出")

        choice = input("请选择操作: ")

        if choice == '1':
            library.display_books()
        elif choice == '2':
            title = input("请输入图书名称: ")
            author = input("请输入作者名称: ")
            library.add_book(title, author)
        elif choice == '3':
            title = input("请输入要借阅的图书名称: ")
            library.borrow_book(title)
        elif choice == '4':
            print("感谢使用图书管理系统!再见!")
            break
        else:
            print("无效的选择,请重新输入。")

if __name__ == "__main__":
    main()

image.png

可以看到,通义灵码直接把每行代码的详细含义都通过注释标注到代码上了,而且可以直接覆盖到原来的python文件上。
而且还可以通过diff按钮快速唤起 IDE Diff 查看窗口,快速了解建议和源代码的变更。
image.png

代码优化建议

  • 采纳代码优化建议:针对优化建议中的建议代码,支持一键插入、复制,快速采纳生成的建议代码;
  • 查看 Diff:单击查看 Diff 按钮,将快速唤起 IDE Diff 查看窗口,快速了解建议和源代码的变更;

选中代码,然后点击生成优化建议,哪怕你是小白,也可以写出非常优秀的代码
image.png

智能问答

@workspace 本地工程问答

当你需要快速了解一个工程、查找工程内的实现逻辑,或有新的诉求需要进行代码变更时,可以在智能问答窗口中通过 @ 可唤起 @workspace,选中后输入你的问题或诉求,通义灵码可快速结合当前仓库进行工程理解、代码查询、代码问答等,同时可以通过自然语言描述需求,结合当前工程生成简单需求或缺陷的整体修改建议和相关建议代码。

下面是我使用@workspace对自己本地的代码库进行的一个分析
image.png
可以让我们很快的就基本了解当前代码库的一个基本作用,在工作中具有重要意义

@terminal 问答

当你遇到执行指令不知道如何写,或者不清楚某个指令的意思时,可以在智能问答窗口中通过 @ 可唤起 @terminal,选择后使用自然语言描述你的需要指令诉求,通义灵码将可以生成你需要的命令。生成指令后,你可以一键插入到 terminal 中进行执行或让通义灵码继续解释。当然,你也可以在选择 @terminal 后,输入指令让通义灵码生成指令解释。

image.png

#teamDocs 知识库问答(企业版)

当你需要结合企业内私域知识信息让通义灵码进行回答时,可以在智能问答窗口中通过 # 唤起 #teamDocs,并输入问题,通义灵码将结合企业知识库(当前用户有权限的知识库)对问题进行回答,在回复中也可以单击查看引用的企业知识库内容。

image.png

总结

自己使用通义灵码也有一段时间了,对我自己而言感觉通义灵码已经是我编程过程中不可或缺的伙伴了,有了它自己的变成效率和质量大大提高,减少了很多去查资料的时间,而且还可以帮助自己去优化代码,所以非常推荐大家去使用一下,希望大家工作顺利!

相关文章
|
28天前
|
人工智能 自然语言处理 前端开发
用通义灵码,从 0 开始打造一个完整APP,无需编程经验就可以完成
通义灵码携手科技博主@玺哥超carry 打造全网第一个完整的、面向普通人的自然语言编程教程。完全使用 AI,再配合简单易懂的方法,只要你会打字,就能真正做出一个完整的应用。本教程完全免费,而且为大家准备了 100 个降噪蓝牙耳机,送给前 100 个完成的粉丝。获奖的方式非常简单,只要你跟着教程完成第一课的内容就能获得。
10484 16
|
24天前
|
人工智能 自然语言处理 IDE
通义灵码--我的编程好伙伴,让我晋升编程大神,从安装到使用
作为一名大数据开发工程师,我在编程过程中使用了通义灵码的@workspace与@terminal工具,这些工具极大地提高了我的工作效率,使我在处理新项目代码和实现新需求时更加得心应手。通过这些工具,我能够在不离开IDE的情况下快速解决问题,生成代码,优化现有代码,并通过智能问答功能获取即时帮助。通义灵码不仅支持多种主流编程语言,还提供了丰富的功能,如代码生成、单元测试生成、代码优化等,显著提升了我的编程体验。强烈推荐给所有希望提高编程效率的开发者。
|
1月前
|
人工智能 自然语言处理 IDE
通义灵码让AI帮你实现自动化编程
通义灵码是由阿里云与通义实验室联合开发的智能编码辅助工具,具备行级/函数级实时续写、自然语言生成代码、单元测试生成、代码优化、注释生成、代码解释、研发智能问答及异常报错排查等功能。该工具支持200多种编程语言,兼容主流IDE,如Visual Studio Code、Visual Studio和JetBrains IDEs。通义灵码在Gartner发布的AI代码助手魔力象限中表现出色,成为唯一进入挑战者象限的中国科技公司。目前,通义灵码下载量已超过470万,每日辅助生成代码超3000万次,被开发者广泛采用。
|
1月前
|
自然语言处理 算法 开发工具
阿里云通义灵码:开启高效编程之门的神奇工具
阿里云通义灵码,基于先进的人工智能技术,为开发者提供高效、高质量的代码生成服务。它简化了软件开发流程,降低了编程门槛,使开发者能够更快捷地实现创意,无论是新手还是资深人士,皆能从中受益,享受编程的乐趣。通过阿里云平台轻松注册、安装插件,即可体验其强大的功能,开启智能化编程新时代。
|
2月前
|
前端开发 JavaScript 数据库
VSCode编程助手工程能力体验报告(一):通义灵码 - 帮你高效切入新项目、编码和提升质量
我是一位软件工程师,用通义灵码个人版vscode插件的workspace做项目分析和复盘,对比之前没有灵码,现在提效了80%,本文介绍了具体的使用流程。
|
2月前
|
人工智能 Python
AI师傅和通义灵码合作助力你学编程
湖北的一位股民通过AI学习了使用通义灵码制作股票浮动止盈点计算器,大幅提升了效率。通过描述需求、编写代码、解释代码和纠错等步骤,实现了从获取股票最高价到计算止盈价的全过程,简化了操作流程,提高了投资决策的准确性。
|
2月前
|
人工智能 运维 自然语言处理
通义灵码:体验AI编程新技能-@workspace 和 @terminal为你的编程插上一双翅膀
本文介绍了通义灵码个人版中的@workspace和@terminal功能,帮助运维工程师快速理解项目结构、实现需求和执行指令。@workspace通过RAG技术深度感知代码库,支持快速上手新项目和协助实现新需求;@terminal则提供智能指令生成和解释,提升开发效率。
267 5
835
|
2月前
|
人工智能 Java 开发者
基于通义灵码轻松进行编程 在 AI 师傅(AI-Shifu.com)学的通义灵码
作为一名Java开发者,通过使用通义灵码个人版学习Python,学习效率提升了80%。根据AI师傅平台的指导,高效利用AI辅助学习的主要步骤包括:1. 描述需求,了解所需技术;2. 细化需求描述,便于AI高效编程;3. 发送参考指令给AI;4. 执行代码测试;5. 查看代码注释;6. 优化代码。
835
66 1
|
2月前
|
自然语言处理 JavaScript 开发者
通义灵码插件:VSCode 的智能编程助手
通义灵码插件:VSCode 的智能编程助手
428 3
|
5月前
|
人工智能 IDE 程序员
一文梳理我们是如何打造出国内领先的 AI 编程助手「通义灵码」
大语言模型的革命性突破使智能编程成为了可能,通义灵码正是基于通义大模型打造的 AI 编程助手,通过 IDE 插件的形式提供代码补全、单元测试生成等功能,能达到毫秒级的响应速度。目前,通义灵码已在阿里云内部及多家企业中应用,阿里云也在探索多智能体产品,即 AI 程序员,助力数字世界的蓬勃发展,颠覆 IT 生产力。
14352 145

热门文章

最新文章