「豆包Marscode体验官」云端IDE如何重定义开发体验

我正在参加「豆包MarsCode初体验」征文活动

豆包 MarsCode 是一个集成了AI功能的编程助手和云端IDE,旨在提高开发效率和质量。它支持多种编程语言和IDE,提供智能代码补全、代码解释、单元测试生成和问题修复等功能,同时具备AI对话视图和开发工具。

豆包 MarsCode

豆包 MarsCode 编程助手支持的 IDE: 支持Visual Studio Code 1.67.0及以上版本,以及JetBrains系列IDE,如IntelliJ IDEA、Pycharm等,版本要求为221.5080.210及以上。

豆包 MarsCode IDE 是一个云端 AI 集成开发环境(IDE),具备原生 AI 编程助手,提供代码补全、生成、优化等功能,支持多种编程语言和框架,无需本地资源,实现随时随地的开发。

豆包 MarsCode官方文档地址:docs.marscode.cn/introductio...

故事起源

故事要从上周六说起。周五下班时大家都兴致勃勃,冲动之下,我也顾不上带电脑,径直开车上高速回家,急着与家里的丫头玩耍。但一到家才发现,书包居然没带。但我手头上还有一些未完成的开源项目工作,以及一个即将截止的征文活动,这些都需要我尽快完成。面对家中没有集成开发环境(IDE)的电脑,可愁死我了,正好当时我在浏览技术社区掘金时,偶然发现了豆包 MarsCode IDE,便立即开始使用这款在线IDE。

用的很不错,正好把我使用的体验感受写一下分享给大家。

先说体验

时间效率

在整个流程中,毫无疑问,使用豆包 IDE 比起先装环境要快得多。程序员们最头疼的就是环境安装,特别是在老式电脑上,我甚至担心会浪费时间。因此,使用豆包 IDE 的直观感受是它快速而稳定。整个环境安装再加上熟悉豆包 IDE,总共花了不到一个小时就可以正常启动项目,其中大约30分钟用在了配置mvn依赖上。这个过程有点坑,难怪会耽误时间。但如果是一个正常的项目,我相信在30分钟内就能搞定。

代码质量

其次,再谈谈我对AI功能的使用体验。实际上,最常用的是代码注释,因为大多数程序员包括我在内,不太喜欢写注释。使用云端IDE平台带来的便利在于,首先无需安装额外的编程助手;其次,通过AI悬挂图标直接选中问题或代码段,能快速解决困扰。这样做非常方便,而且最重要的是可以提升代码质量:一方面减少了对变量名的纠结,另一方面也让代码注释变得更为到位。

深度体验豆包 MarsCode IDE

以下是整体流程的详细描述,以确保信息清晰和逻辑连贯,防止大家头脑混乱:

登录豆包 MarsCode IDE 工作台 ------> 导入 GitHub 仓库 ------> 选择开发环境模板 ------> 配置项目 ------> 运行项目 ------> 体验项目 ------> 代码提交

spring-ai

使用云端 IDE 的主要优势之一是其适用于个人开发者,而大公司通常有自己的代码仓库。对于个人开发者而言,选择云端 IDE 编写开源项目再合适不过,特别是豆包 IDE 提供的资源分配非常充足。这意味着不必担心本地环境可能导致的宕机、电脑死机或磁盘损坏等问题。

然而,对我来说,稳定的网络连接是最关键的因素。在家里,访问 Github 时经常面临网络连接问题或速度极慢的情况,这对开发效率有显著影响。因此,我决定通过编写我的开源项目【spring-ai-demo】来深入体验豆包 IDE 的功能和性能。

快速导入GitHub 仓库

请访问豆包 MarsCode AI IDE 的官方网站:www.marscode.cn/dashboard

在开始之前,请登录豆包 MarsCode IDE 工作台,并导入我们的GitHub仓库项目,操作步骤如下所示:

在进行 GitHub 授权后,你可以访问自己的仓库项目列表。在选择要开发的项目时,系统会自动识别适用的语言模板,例如,如果你选择的项目是 Java 的话,它会自动识别为 Java 模板。

tips:单个账号在豆包 MarsCode IDE 上创建的项目数量不得超过 10 个

当你导入创建项目时,速度非常快,基本可以在几秒钟内完成,而且还会自动识别为 Maven 项目。

依赖环境

拿到新项目后,我们的操作步骤与通常一样,唯一的不同是无需搭建运行环境,只需下载依赖即可。更方便的是,我们可以直接从阿里云仓库下载依赖,无需单独配置mvn的setting文件,这一点特别贴心。

这一步直接报错了。按照官方的依赖包下载的话,在阿里云镜像中是找不到的,具体如下所示:

tips:在pom中指定了repositories仓库地址,也不会生效,可以认为只能去阿里云仓库

当即使指定了下载包仓库,仍然无法成功时,我出于好奇查看了阿里的镜像,发现其不存在。进一步调查后发现,阿里云的镜像groupid已经更改。因此,我也需要相应地进行修改:

修改后,终于成功实现了正常的下载功能,但我仍不清楚是否损失了哪些功能。这可能被视为一个缺陷,因为我的项目是开源的。如果某些小公司内部依赖于私有仓库的包,那么他们可能会遇到问题。

启动项目

在启动项目时,这里会持续提示各种配置项,只需直接启用它们,即可顺利完成启动操作。

确保在启动任何maven项目之前,务必确保项目已成功编译完成,否则可能会导致出现各种文件找不到的错误。

同样地,你也可以在这里配置适合自己习惯的操作方式:如clean install -DskipTests=true

体验项目

启动成功后,将会显示相应的路径及其所监听的端口信息,让我们来查看一下吧。

这里是我们项目真正使用的端口监听。如果需要详细了解,请查看项目配置文件中的相关信息。好的,让我们进行访问。

当我们查看 web-view 时,请将输入的路径转换成对应的路径。举例来说,如果我直接访问 swagger-ui,那么输入的路径就是 doc.html。

此外,除了这些路径,我只需在此页面上点击即可查看和操作剩余的所有路径。

当然,如果你不希望在这里使用webview,也可以复制路径并在浏览器中打开以访问。总体而言,项目启动的基本环境依赖操作通常可以在30分钟内完成。

在这里,不仅可以根据相应的路径找到对应的控制器,还可以观察到垃圾回收器的工作状态,这使得这个视图变得非常有用和优秀。

当鼠标悬停在注解上时,甚至可以显示出本类中的对象是如何被注入的。这对于研究源码来说也是非常有用的功能。

小操作的一项优化是支持文件重命名时,同时修改其中的类名。

编辑项目

完成了上述基本操作后,接下来我们将开始今天的主题:继续维护我的开源项目spring-ai-demo。今天我们将深入探讨函数调用。

大型语言模型(LLM)在训练完成后被冻结,导致其知识陈旧,并限制了其访问和修改外部数据的能力。

为了解决这些问题,函数调用机制应运而生。这种机制允许你注册自定义函数,将大型语言模型连接到外部系统的API。这些外部系统能够为LLM提供实时数据,并代表它执行数据处理操作。

Spring AI简化了支持函数调用所需的代码编写。它处理了函数调用的对话流程,使你能够轻松地注册函数。你只需提供函数的Bean名称作为a,然后在提示选项中选择该名称以激活该函数。此外,您还可以在单个提示中定义和引用多个函数。

  1. 执行聊天请求及函数定义信息的处理,例如解释模型何时应该调用函数以及函数的输入参数模式。
  2. 模型决定调用函数时,会传递输入参数给相应的函数,并将输出结果返回给模型。
  3. Spring AI 管理此对话流程,将函数调用分发给适当的函数,并将结果传送回模型。
  4. 模型可以执行多个函数调用以获取所需的所有信息。
  5. 一旦收集到所有必要信息,模型将生成响应。

补全代码

这里先快速写一个入口,tab补全代码

报错修复

在复制粘贴过程中,IDE并不会自动添加相关的依赖包。因此,每当遇到类报错时,如果IDE提供了快速修复选项,请优先点击执行修复操作;如果没有快速修复选项,则建议参考AI fix的建议进行手动修复。

代码注释

这个功能简直是太赞了,我真的很喜欢它。因为有时候实在懒得打字,但在线IDE可以根据我的输入自动理解代码的意图,并且根据我的简短提示自动生成后续的注释。这对于我这种懒人来说简直是福音啊!就看看它的效果吧。

AI 问答

有任何报错,无论是来自控制台还是其他地方,他都能够利用智能问答进行优化和解决。

同样也有历史记录进行维护,这样可以方便回顾和查看之前的错误记录。在记录问题时,根据解决方法详细描述,以确保下次不会再犯同样的错误。

最后重新启动项目即可。尽管已经进行了函数回调,但由于地址传错,无法避免。毕竟这些API都由开发者自行管理,最初我以为是官方的问题,但询问后发现与官方无关。

tips:这里注意下每个路径都是有时间限制的,所以如果长时间不刷新,路径也将会失效,点击刷新即可。url路径是不会改变的

提交变更

当你完成开发并维护相关代码之后,可以直接使用此接口进行Git提交,从而实现一站式的服务。

总结

豆包 MarsCode 是现代开发者的利器,其集成了强大的AI功能和云端IDE,极大地提升了开发效率和代码质量。通过支持多种主流编程语言和IDE,豆包 MarsCode 不仅简化了环境配置过程,还提供了智能代码补全、单元测试生成、问题修复等多项AI驱动的功能,使开发者能够专注于创造性工作而非繁琐的设置。

在实际使用中,我深刻体验到豆包 MarsCode 的便利。无论是快速导入GitHub仓库、自动识别项目语言模板,还是轻松配置和启动项目,它都展现了出色的稳定性和高效性。与传统的本地IDE相比,豆包 MarsCode 的云端特性更加灵活,使我能够随时随地进行开发,无需担心硬件或网络环境的限制。

特别是在代码质量的提升方面,豆包 MarsCode 的AI功能展现了其独特优势。自动代码注释、智能问题解决建议,以及对话式AI视图的应用,不仅简化了日常开发中的繁琐任务,还显著提高了代码的可读性和可维护性。这些功能不仅让我在忙碌的开发过程中节省了大量时间,还使我的开发工作更加高效和愉悦。

总的来说,豆包 MarsCode 不仅是一个工具,更是现代软件开发中不可或缺的助手。它的出现不仅推动了开发工具的技术进步,更为开发者们带来了全新的开发体验和工作方式。期待未来豆包 MarsCode 在AI驱动开发领域继续创新,为全球开发者提供更多实用且强大的功能。


我是努力的小雨,一名 Java 服务端码农,潜心研究着 AI 技术的奥秘。我热爱技术交流与分享,对开源社区充满热情。身兼掘金优秀作者、腾讯云内容共创官、阿里云专家博主、华为云云享专家等多重身份。 🚀 目前,我的探索重点在于 AI Agent 智能体应用,我对其充满好奇,并不断探索着其潜力与可能性。如果你也对此领域充满热情,欢迎与我交流分享,让我们共同探索未知的领域! 💡 我将不吝分享我在技术道路上的个人探索与经验,希望能为你的学习与成长带来一些启发与帮助。 🌟 欢迎关注努力的小雨!🌟

相关推荐
monkey_meng1 小时前
【Rust中的迭代器】
开发语言·后端·rust
余衫马1 小时前
Rust-Trait 特征编程
开发语言·后端·rust
monkey_meng1 小时前
【Rust中多线程同步机制】
开发语言·redis·后端·rust
paopaokaka_luck5 小时前
【360】基于springboot的志愿服务管理系统
java·spring boot·后端·spring·毕业设计
热爱跑步的恒川5 小时前
【论文复现】基于图卷积网络的轻量化推荐模型
网络·人工智能·开源·aigc·ai编程
码农小旋风7 小时前
详解K8S--声明式API
后端
Peter_chq7 小时前
【操作系统】基于环形队列的生产消费模型
linux·c语言·开发语言·c++·后端
Yaml47 小时前
Spring Boot 与 Vue 共筑二手书籍交易卓越平台
java·spring boot·后端·mysql·spring·vue·二手书籍
小小小妮子~7 小时前
Spring Boot详解:从入门到精通
java·spring boot·后端
hong1616887 小时前
Spring Boot中实现多数据源连接和切换的方案
java·spring boot·后端