一起来玩一玩AI编程助手-Cody,可能是程序员的第一个AI编程助手

引言

年初ChatGPT大火,给AI带来了很高的话题度。ChatGPT是内容生成式的AI,作为程序员,我们可以使用更加垂直的编程助手AI,因为之前看Android Framework代码的时候有用到SourceGraph。最近在查看Framework的一些代码资料的时候无意中看到SourceGraph出了一款AI编程助手--Cody,安装使用非常简单,在VS Code试用了一下。觉得挺有意思的,的确可以减轻程序员的一些工作。

快速尝鲜

如果想快速体验,直接注册账号在网页端体验即可。

本地体验

我是在VS Code里面安装Cody AI插件。

配置过程非常简单,就不再赘述了。我主要是分享一下我的使用过程,个人觉得还是挺有意思。以后可以早点下班了 (不是,可以多做几个需求了) 。

使用

我是在VS Code里面打开一个自己的小项目,然后以这个项目作为Cody的上下文Context。 代码是这样的:

Java 复制代码
public class CategoryActivity extends BaseActivity {
    ...
    //点击按钮跳转到RxjavaActivity
    public void rxjava2(View view) {
        startActivity(new Intent(this, RxjavaActivity.class));
    }
    //点击按钮跳转到OkhttpActivity
    public void okhttp3(View view) {
        startActivity(new Intent(this, OkhttpActivity.class));
    }
    ...
}

没什么特别的,就是在一个Activity里面有很多个按钮,然后点击按钮就跳转到相应的Activity。此时我对Cody说:模仿这个风格,帮我生成跳转到TestActivity的代码,包括TestActivity以及它的xml代码。

好家伙,这个指令正确地执行了。看着代码一行一行生成,还是有点震撼的。 此时我转念一想,新建一个Activity是不是得在清单注册一下,于是我说:androidmanifest需要改动吗。

嗯,Cody给了个必要的简单写法。这不能说是错的,虽然没有export之类属性,可是我也没有说要适配版本嘛不是。不过吧,既然是已经以当前项目为上下文了,是不是AI回答的时候也加上export呢(有点吹毛求疵了喂)?

让我再想想怎么刁难它,就用它生成的代码来问它吧:jumpToTestActivity这个函数,我想在CategoryActivity的xml里面定义一个按钮,你参考一下CategoryActivity的xml里面的做法吧

按钮生成是生成了,可是我的风格是这样的啊:

可以看到还是有区别的,我的代码是每次要添加按钮的话就copy一份就好了。当然,也不能说它是错的,因为的说法可能有点歧义了。你参考一下CategoryActivity的xml里面的做法吧它理解的做法用android:onClick指定回调函数吧,虽然我本意是想它生成完全一样的代码。 于是为了让它把style加上去,我说:不用你重新定义style,你就直接用它里面的MyButton。

没有达成我希望它做的事情,而且项目里也没有com.example.samsung.testdemo.MyButton。 MyButton其实是style: 于是我说:你搞错啦,我想要的是这样的效果style="@style/MyButton" 这下终于完美达成了。此时我还想调戏一下它,不过刚好达到对话次数的上限50次了,要等24小时才能继续对话,就先到此为止吧。

总结

总的来说,个人觉得AI编程助手还是挺有用的,随着对话越来越多,它越来越能理解你的意图。当然,最好是对话的时候说清楚上下文,表达的时候最好清晰点。生活中很多人其实说话经常脱离上下文,这样不仅AI会困惑,就连人也会困惑。决定用来开发提速了,真香!这时候灵活的小伙伴已经把AI开发提速,并团队推广,提升团队开发效率写进OKR了。拥抱AI吧,各位。现在Cody还是免费使用阶段,上手成本低(配置过程极简,我全程用下来几乎没有报错),而且支持中文问答,可以作为程序员的第一款AI编程助手。

彩蛋

后面看看在更加贴近日常开发场景的使用是怎样的,TO BE CONTINUED。

相关推荐
2501_944992023 分钟前
出海品牌GEO指南之品牌做好GEO的前置条件
人工智能
工作10年+,存储芯片行业9 分钟前
存储芯片行业全景:从嵌入式存储到车规级认证的技术演进
人工智能·ssd·nvme·半导体·ufs·emmc·存储芯片
W***259210 分钟前
深度解读Work Agent长程任务执行的底层运行逻辑
大数据·人工智能
400分15 分钟前
从零到「机械臂会放试管」:π0.5 VLA 真机部署完全指南(第二节)
人工智能·架构
Oiooohuohuo16 分钟前
LangGraph Multi-Agent案例讲解
人工智能
谁在黄金彼岸17 分钟前
2026年第40周科技社区趋势周报
人工智能
winfredzhang17 分钟前
9.7GB AI 模型总下崩?我用 Python 写了个支持分段续传的多线程下载器(源码解析)
人工智能·大语言模型·多线程·下载·多任务
深蓝AI20 分钟前
不生成文本的AI日吞一万亿Token:决策模型Jev撕开大模型的替代路线
人工智能·ai编程
付威202326 分钟前
Rust 1.99 更新了什么?一个新手视角的升级前后对比
人工智能·后端
小宋102126 分钟前
一套服务托管多个 LoRA:适配器加载、租户隔离与热切换实战
大数据·人工智能·算法