讨论一下 Ai 辅助编程的痛点
目前在使用的是:通义灵码、copilot
最近在使用 ai 辅助编程发现遇到几个问题,各位是怎么解决?还是是我的提问方式不够好:
提问生成的代码会比起自己写的更容易出问题,调试的时间更长,可能最后我自己写完还更快
目前提效更多的是一些体力活,比如命名、预测相似的逻辑等
生成速度的我感觉很慢,深度思考更慢,几十秒到几分钟不等
ai 幻觉,会下意识信任 ai 的代码,就容易回到 1
工具不行,换 cursor
先生成单测,再生成代码
下意识不信任 ai ,然后每次都要把 ai 代码再读一遍,更累了
谨慎使用,有时很庆幸在 AI 这么强大之前学会的编程。可以参考之前总结的一些经验教训(不光适用 cursor ,所有 AI 辅助编程都适用)。 www.pixelstech.net/article/1736068526-be-careful-when-using-cursor-to-help-build-application?lang=chinese
- AI 在处理一些重复性或者基础性工作方面可以做的很好,比如:下一步的意图判断(按 Tab 键就完事了)、类型提取、函数提取等等。
- AI 检查代码片段的基础逻辑问题,人经常犯的基础问题,有时代码不好直接调试,一眼看上没问题,AI 却可以一眼看出来并且给你纠正。
- 用过纯 Chat 的工具帮我写代码,也用过基于 IDE 的编程助手( Trae 、Copilot ),目前我体验的两者提供的体验都不错,都可以快速有效的帮我解决很多问题
- 虽然借助 AI 助手完成代码编写的开发方式高效,但并不总是轻松的,并不像网上很多人说的那样轻松,随随便便就可以写一个东西,比如:《我用半小时写了一个 XXX 》,当然如果你要实现的是一个非常通用的东西,它确实也可以达到这个效果。
- AI 帮我写代码不轻松的地方在于,你需要快速理解并且准确判断它写的东西是否准确、思路是否正确,一旦它的思路出现了问题而你又没有发现(尤其是涉及基础知识的的时候),这个时候它能把你累死,它可以一直写一点不累,左一个想法、又一个思路的,你需要一直理解它的思路,然后一直试,可是结果就是不对,你会非常累和焦虑😭😭😭。
- 从我的心路历程看出现上面一条问题的根源在于,我不太想理解 AI 的实现细节(还有一种是涉及基础的知识确实不懂),想快速的解决问题,于是期望通过效果验证、情况说明等泛反馈让 AI 帮我快速修正问题,从前面分享的案例也可以看出来,前面几次与 AI 沟通交流都没有解决问题,出现这个问题我觉得我肯定有责任,轻敌了,没有驾驭好这个问题,当然作为我的结对编程 Partner ,AI 助手多少也有些能力上的欠缺 😁😁😁。
- 前面说的可能就是 AI 幻觉的问题,掉入 AI 幻觉的陷阱(以往普通开发中可能也有类似的陷阱吧,比如不想深入了解细节,一直试,结果就是不对)这个问题非常严重,AI 并不知道自己错哪了,这在处理复杂问题时非常的常见,你需要对它进行精准的引导。
- AI 辅助开发并不是银弹,它现在更像一个有知识没想法的天才少年,你需要告诉它思路和方向,它才可以很好工作,假如完成的东西涉及一些理论知识你自己不了解,它又很难一次预判所有情况和场景,一次性写对,这就难办了,你就需要基于已有线索就理论知识进行深入沟通和学习,然后再给出判断和正确的反馈,这个过程其实也非常费脑子。
- 感觉和 AI 编程助手打交道也是要有耐心,也需要抱着学习的心态,复杂情况下它给出的代码也是需要一步一步的验证,给出合理精准的反馈,太着急反而不利于解决问题。
不过,得益于结合 IDE 的编程助手的出现,前面说的一步一步的验证过程,也可以让 IDE 助手帮实现,整体效率还是有很大提升的。
我只让 AI 提示我怎么写,而不是让 AI 帮我写
不用 AI 就没这些烦恼了
你用的啥工具啊...工具之间差异挺大的。比如 cursor 自带问题自动修复功能,但你用 trae 明显功能差很多了。
生成速度确实不算很快,从提问到结束是需要几十秒的,你几十秒能写的代码确实没必要用 AI ,但是换种思路,那种需要更长时间的用 AI 不就有意义了么...
用 cursor 你就知道这两个有多烂了
我刚开始也是这样,但是用了 trae 和 copilot 这类和 ide 集成的 ai 后,发现世界观变了,ai 能做的更多。
换 cursor
不是一般先有代码,再有单测吗?这是什么高级操作吗?
现在就是这样的困境,ai 现在更像一个““查得更快得搜索引擎””
同感,所以我很难理解那些靠 ai 就能 0 基础就能编程的理论,除非生成的玩意都是““一次性代码””,看效果就完了,完全没有下一次迭代
上单元测试
测试驱动开发 TDD 可以了解下
目前问题:自己写的代码有印象,出问题了解来龙去脉,AI 提供的代码复制黏贴,能跑,但是出问题或者要加需求就得从头到尾看下代码
ai 写出来的东西,先从头到尾看一遍,花不了多少时间
ai 写的东西看一遍,看到没用过的还可以当场学习,直接 copy/apply 非常不好。
人工智能正在创造一代文盲程序员 nmn.gl/blog/ai-illiterate-programmers
最强编程工具请认准 cursor
Every time we let AI solve a problem we could’ve solved ourselves, we’re trading long-term understanding for short-term productivity. We’re optimizing for today’s commit at the cost of tomorrow’s ability.
每当我们让 AI 解决一个我们可以解决的问题时,我们都会为短期生产力提供长期理解。我们正在以明天的能力为代价为当今的承诺进行优化。
有种被 ai 控制的感觉
公司有个项目,每秒接收大概 1700 万字节的数据,会分成六个波形图,要求客户端能维持 60 帧,目前公司前端只有 vue,调研了下好像用 vue 没办法做到 用 ffmpe…
问题:在终端 A 中 ls -l 只能发现之前创建的两个文件,并不能发现 file03 ,请问,是否有办法在不结束终端 A 且不切换目录的情况下,在终端 A 中显示 file0…
此课程有全部讲义和习题。 课程描述实在得令人发指。翻译如下: 您是否由于自己的Python程序比同僚们的C程序慢而垂头丧气?你是否想不用JAVA实现面向对象?加入我们,学习C和…