这个文章值千金

微信小程序搜索:情绪奶芙,就可以找到这个小程序

现在AI编程真是热火朝天,从最开始的Cursor到国产的TRAE,最近听说腾讯也出了一个叫codebuddy的,于是就下载来试用看看。

别急着划走,一个小白和程序员使用AI的差异将决定使用的效率和效果。文章会说。

该文不告诉你具体的使用步骤,而是告诉你一种使用AI编程的思维模式

先说结论:

Cursor:还是最好用的,可惜要科学上网,也贵,再听说字节出了TRAE后就更换成TRAE了

TRAE:AI编程方面,Trae还是天花板,虽然也经常犯傻,现在的solo方式简直绝绝子

codebuddy:腾讯家的,能用,bug很多,经常执行任务就中断,作为

准备工作:

下载连接:https://www.codebuddy.ai/home

我印象中它家最早的时候是个插件,要在copilot里使用,现在已经是IDE的方式了

下载完安装后界面如下:

0代码开发:

很多小伙伴不知道怎么使用AI编程,对于没有开发经验的来说,确实很容易就开发出一款产品,可是我想说的是,AI是程序员的翅膀,对没有编程经验的来说可能是装上了轮子,能跑起来了,可是只能停留在浅层,你可以很多做出一个产片,可当项目变得复杂的时候,你使用AI就会打转。

而有编程经验的程序员,就是如虎添翼了,基础代码不需要自己写,但是框架、模块、技术栈可以自己定。

开始故事

最开始不是让AI开始coding,这也是很多人一上来就干的活,比如编程小白就会告诉AI,我要做一个两个小人打架的游戏,然后就结束了,AI开始干活,吭哧吭呲好像也能做出一个简单的游戏出来,小白很兴奋,靠!我都会编程了,那些程序员白混了。

问题就出在这里,作为用户,我继续提要求,要求这个小人可以有不同的角色,可以保存数据,可以更换装备,不止这两个小人,还要有几十种不同水平和技能的小人,然后小白说好的,然后把需求原封不动告诉AI,你给我解决,AI一顿吭呲吭呲好像又完成了,然后一试玩发现不对啊,我的角色装备怎么跑那个角色上去了,也不会升级呢,然后我重启了,数据好像丢了,我的名字怎么没了,然后小白又对AI一顿输入,然后有点绝望,怎么越改问题越多,然后大骂一声,这个AI智障。

架构的设计

最为一个有经验的程序员,他知道一开始肯定不是写代码,是先了解需求,尤其是还要分解开发任务的话,还得和工程师狗沟通,好的,现在AI就是你的员工,你让他们干活,决定权在你。你会如何做呢?

比如我做这个小程序,我的需求很简单,就是做一个大家可以发布日记的,可以交流的平台,但是我如果这么告诉AI,他是不懂的,可能做出来不是你需要的,然后我先和它沟通:

1、agent交流

我开始使用了工作模式,先交流:

我要做一个小程序,大概功能是用户记录自己的情绪然后可以分享,淡雅的风格,你就这个思路分析一下要做什么工作,需要哪些技术架构,有问题向我提问

然后AI就和我交流,提了问题,我也在这个交流中完善,当选择的技术框架、数据存储、交互、UI等确定后,要让AI给你输出需求文档.md,一定要用md格式,这是AI最好理解的格式。

我截屏了一部分,里面清晰的记录下具体的实现方案。

2、数据库设计

这部分很重要,这部分我没有做的,后面开发点赞收藏等功能时吃了多亏,反反复复的修改了好今几天才修好,可是数据库的架构我是不满意的,后期这块就得花大力气去做重构。

为什么这个很重要,我们在设计代码的时候都知道要先分模块,数据库的划分,这些是要做的,可以不写代码,但是让AI去做这个,它有局限性,它没有考虑扩充的方面,所以我们要先规划好模块、接口、数据库等这些架构的东西,这样你再让AI去完成各个模块,然后再弄一个AI进行测试,就很清晰了。

3、编码

前面的工作做完了,才到编码的时候,根据模块等一块块的让AI去完成,你可以提前规划比如函数名、类名等都先让AI给你定义好,你审核无误后再让AI开始编程,这样你是可以把握总体,不至于像小白一样,复杂点就和AI一起蒙了

4、输出文档

这个简直是程序员的福音,因为程序员最不喜欢的就是写文档,但是当你使用AI编程之后会发现,文档简直太好用了

小程序功能与架构分析.md,这个就是每次开发完一个功能我就让AI重新更新这个文档,这样你可以看,AI也可以看,当对话轮数很多时AI就会犯傻,这时候新开一个对话框,这个文档就能很快让AI知道你的代码结构,如果你是模块化开发,每个模块都可以让AI写文档,接口、函数、字段说明等。

5、迭代需求

我们做产品,不是一次就能完成的,是不断迭代的,AI编程也是一样的,每次做完一个需求后新的需求也同样要和AI进行交流沟通,输出文档、定义数据等步骤,然后才是编码

比如我这个小程序,经历了6次需求,产生了6个需求文档:

后话

我觉得,最重要的是使用者的架构思维,可以说已经在扮演一个架构师,因为项目的需求等你是清楚的,技术栈你不清楚但是可以和AI交流得到一个最合适的技术栈,数据分解、模块划分,这些不都是架构师的工作么?AI完成这块是不行的,它只能是辅助你,你利用得好就如虎添翼。

最后剩下编程的工作就是AI完成了,甚至测试的工作都可以让AI完成。

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐