使用各个AI工具、大模型也有很长一段时间了,在代码开发方面确实走了不少弯路,有句话说得好:人生每一步都算数,这不我对走过的弯路总结了七个实用的经验,希望可以帮助到你。
经验一:不要想一句话解决所有问题
不要想着一句话让大模型帮你把需求、设计、技术路线、代码开发都搞定。AI编程发展阶段:AI辅助编程 → AI结对编程 → AI自驱编程,当下还处于辅助编程阶段,正在像结对编程发展,包括目前主流的 Cursor、Windsurf、trae等都在像这个方向努力。现阶段可以把AI当作不同岗位的同事,分工种干活,例如让他作为产品经理,先和他聊需求,形成需求设计PRD文档;让他作为UI设计师,和他聊功能原型设计,形成UI设计图;让他作为技术架构师,和他聊技术选型、技术实现路线,形成技术实现方案文档;最后让他成为高级开发工程师,把需求PRD、原型UI设计图、技术实现方案都告诉他,让他编写代码。
经验二:有规范有条理的沟通
使用自然语言和AI工具沟通需要桥梁,这个桥梁可以是文字、图片、文档。作为程序开发来说,程序员最喜欢的是Markdown文档,比较友好的也是Markdown文档,对于AI工具来说,将你的需求、问题、任务、目标、标准等等,梳理成标准化、规范化、条理清晰的Markdown文档,提交给他,他会很容易理解你的诉求,并按要求执行。
经验三:代码调试不要纠缠不放
关于代码调试,真的会遇到写代码仅10分钟,调试几个小时的情况。遇到这种情况,不要和AI纠缠,因为此时他已经凌乱了。就好像你和别人不断探讨问题,每个问题都延伸,每个问题都没解决,这个时候重点问题已经不清晰了,特别是对于当下AI工具来说,受上下文长度限制,更容易陷入混乱之中。如果在一个对话中尝试多次不能解决问题,最好终止当前对话,梳理好你的遇到的问题和要求,然后新开对话,忘掉之前的上下文重新开始,或者换工具或模型。
经验四:善用Git代码管理工具
无论是需求开发,还是代码调试,很多时候你会遇到之前的代码可以正常运行,当你让他继续编写其它功能代码,或者调试其它功能时,他会把之前正常的代码改的不正常,出现新代码影响老代码的问题。这个时候,我们就需要有一个工具可以帮我们保存、回退,所以需要借助Git不断保存阶段成果,在必要时可回退。
经验五:从小到大,切莫贪快贪急
你可以把AI工具当成一个身边的同事,他知识、经验和技能都很精湛。但即使他再厉害,如果让他做一次性把所有活都干的精细、正确、完整不太可能,更多时候只是帮你做了个大概,至于细节没有足够的时间和经历去细扣。所以,使用AI工具时,如果有交互界面开发,可以先让他把UI效果先实现,不要着急写业务逻辑代码;如果功能比较复杂,可以把任务拆分成小模块、子任务,每次完成一个或几个,阶段性的完成,并不断打磨。只有这样,你才能逐渐体会到AI工具是真好用,而不是啥也不是。
经验六:让AI工具复述,才能更懂你
有时并不是AI工具不懂你,而是你没有给他交代清楚你到底要什么。所以,我总结了一套经验:在将“人设+任务+上下文+示例+目标要求”组织成自然语言提交给AI后,让AI复述一遍你的诉求,同时让他思考是否存在疑问,若有提出疑问,直到沟通清楚。这样的流程会减少你和AI工具之间的理解偏差,更大程度上让AI工具获取更多你的诉求,这个有点类似费曼学习法,只有给别人讲清楚才是真的懂了。
经验七:混合使用AI工具
Cursor有Ask、Agent两种模式,Trae有Chat、Builder两种模式,每种模式都有不同用途和考虑,我们需要学会混合使用,不要在Agent模式下一条路走到黑。就拿Trae来说,使用Chat模式沟通需求任务,让AI复述并提出疑问,解答疑问,让AI提供多种方案并分析优劣势,人工确认方案,然后让AI拆分方案,拆分成可执行的步骤,同时将这些步骤记录到MD文档中;使用Builder模式执行拆分的任务,不要一次全部执行,逐步执行逐步验证,以防止大量代码生成后无法运行,调试成本增高,同时还是借助Git工具,阶段性保存分步执行结果。
同时,针对不同大模型或AI工具,当其中一个不能解决问题时,也可以尝试换一换,没准换一个模型或者工具,有些问题就迎刃而解了,混合模式用起来会有加倍效果。
大模型技术刚开始问世时,受限于技术发展初期,各项能力确实不太行,很多时候大家都会感叹:啥也不是。时至今日,不可同日而语,更多时候我们要反思:是不是我没有讲清楚?不是大模型不行,而是我们不会用罢了。
以上是本篇幅的全部内容,如果这篇文章对你有用,可否点个关注,给我个三连:点赞、转发和在看,我们下篇再见。