MarsCode: AI Coding Assistant

MarsCode: AI Coding Assistant

豆包MarsCode是字节旗下的一款智能编程助手,提供以智能代码补全为代表的核心能力,支持主流编程语言及 IDE,能在编码过程中提供单行或整个函数的建议,同时支持在用户编码过程中提供代码解释、单测生成、问题修复、技术问答等辅助功能,提升编码效率与质量。

代码补全 Code Completion

在编码过程中提供单行或多行的代码推荐,并支持通过注释生成代码片段,提升代码编写速度。

代码补全 Pro(beta)Code Completion Pro (beta)

在修改或重构代码时,支持基于编辑行为和代码情况预测下一个改动点,并给出推荐,协助完整的编码过程。

代码解释 Code Explain

精确解释项目代码,帮助开发人员快速熟悉项目。

单测生成 Unit Test Generation

选中函数生成单测,提升单测覆盖率,提升代码质量。

注释生成 Generate documentation

为整个函数或每行代码生成注释,提升代码可读性,方便协同开发。

智能修复 AI Fix

一键修改代码bug,提升代码修复效率。

智能问答 AI Q&A

对研发领域定向优化问答质量,提供更精准的问答结果。

支持VSCode插件安装

对比Comate

Comate界面:

MarsCode界面:

MarsCode的功能没有Comate齐全,其提供的一些代码编写辅助功能是市面上大多数AI编程助手都有的基本功能。
在使用体验上来看:
1.代码智能补全

吃完了细糠就吃不得糙米,开始使用MarsCode的第一步体验就不太好。
首先它无法理解注释“监听input输入事件并处理回调”来生成代码。
即使输入了引导代码“input.on”它都无法补全该行后续的代码,这一点看上去跟CodeGeex或Comate没法比。
当输入了“input.on(Input.EventType.TOUCH_START, this.onTouchStart, this);”
在等待它补全后续代码如“touch_end”,"touch_move",结果它转了几秒钟,然后完了,没下文了...就不对其“代码补全”的功能报什么期望了。

无法提示代码补全。

在使用过程中发现了一个很有意思的事情:MarsCode越写越顺滑,这个“顺滑”体现在当框架内有了一定的代码资源,对于重复的(已经编写过的)代码会比CodeGeex或Comate更好用,可能描述的不太准确。MarsCode对上下文的理解和逻辑上的提示更符合预期。
举个例子,我在编写一个移动摇杆的实现方案时:

整个实现除了定义一些属性外,几乎全部采纳。比如别的引用(_gameData)都不需要手动提示。
这一点目前来看要比Comate的效率和准确率更高一些。

对MarsCode的印象真是一波三折,在编写某些特定功能时,它无比的顺畅。而当你对它有所期望时,它大多数时候都在当机中。

如上期待它对状态的切换逻辑有一些提示,结果它连一个单词都不带提示的,甚至在手动编写整个状态逻辑切换的实现过程中它一声不吭!
弃了!

posted @ 2024-10-30 10:51  EricShx  阅读(487)  评论(0)    收藏  举报