现在用 AI 写小项目太方便了,前后端的项目,直接用 nextjs 梭哈,代码都不用管,当一个产品经理和测试即可,自己懂部署就行。
但随着使用的次数增加,AI 的一些问题会暴露出来。nextjs 会让你选是否使用 ts ,如果使用了 ts ,AI 写的代码会经常需要自己修改 lint 问题,还有一些 any 声明的问题。虽然这些可以 disable 掉,但还要手动去碰这些脚手架,对于不是很懂开发的人员来讲,这也要话时间去学习研究。虽然 AI 可以帮你完成,但最好你懂它在干什么。
但是丢掉了 ts ,感觉就会少一层保护。现在就出现“既要又要”的局面,既想要 ts 带给的安全警告,又要 AI 能够像一个真正的“程序员”一样来完成项目。
项目代码稍微多一点,AI 就会出现到处“拉💩”的问题,同样的方法不知道抽象出来。而且一个 ts 文件代码行数越来越高。有一次让它去重构一下,因为中间遇到了一个警告问题,结果把页面的逻辑也给改乱了。
再一个是关于数据库,用 prisma 这种 ORM ,感觉更复杂一些,还需要手动 generate 和 migrate ,尤其是后面对数据库表结构调整。最近的几个项目我都没用 ORM ,直接操作数据库,这样更方便一些。舍弃了 ORM 带了的一点好处。
总结一下,现在的 AI 可以做一个好帮手,但随着项目的代码增加,需要一个真正的程序员去半自动化管控,及时的让 AI 来重构。
1
foolishcrab 7 天前 via iPhone ![]() 其实你这个结论就是 ai hype 人群和正常程序员的根本分歧。
正常程序员在兴奋过后,马上就会想在生产级代码上去使用 ai ,然后得出你这个结论。而 hype 哥们只会不停地输出补光灯 app 来强化 ai 无敌这个观点 |
![]() |
2
Lemon2ee 7 天前 ![]() ai 编程不是开盲盒,是帮你省去打字的功夫。
代码生成后仍然是需要你去审阅,仍然需要你去记住代码结构,这样你下一次让 ai 帮你写代码的时候你能够告诉他怎么写,用什么 function ,怎么拿东西,要注意什么等等。 |
![]() |
3
oliveira 7 天前 ![]() 我感觉 TS 的类型系统提升了 AI 编程的稳定性。特别是在 Agent 模式下,AI 可以自动修复 TS 类型问题,从而确保代码不会有明显的类型错误。
|
4
EgoTao 7 天前 ![]() 刚巧这两天领导让我去看看 anima+figma 能不能减少前端工作量。 测试了一下,首先第一点需要 UI 用 figma 的时候尽量符合 Anima 的规范,不然它都不知道这里是不是可以滚动的。第二点,就是生成出来的代码,如果想迭代要么就是重新生成,要么就需要花打吧时间去描述逻辑和验证代码,也就是你说的这个情况。当使用 AI 进行迭代,还是需要人工介入的。 我给领导的反馈就是,做一次性的落地页之类的还行,对于强交互或者需要长期迭代的反而不如人直接上手。
|
![]() |
5
sing1ee 7 天前
AI 是比较喜欢 ts 的,——所以适合。
|
![]() |
6
FaiChou OP @Lemon2ee
AI 写代码分成三种模式: 一种是让 AI 来 tab 补全,逻辑完全自己掌控,这种已经很成熟了。 另一种是半自动化,对于一个成熟的项目,让 AI 来迭代,喂给它需要了解的代码,以及讲好需求,它来实现。这种也挺成熟的。 最后一种是全自动化,项目的创建,代码的编写完全由 AI ,自己仅做产品经理和测试人员的工作。这种会遇到很多问题,也就是我上面写的那些各种问题,这种问题可能是由上下文太长导致的,仅仅靠一些 system prompt 解决不了。 |
7
iceNa 7 天前
我最近在改造老项目的时候也遇到了,因为之前的同学图省事有比较多的 ts 类型错误没有修改。
所以我现在每次提问都会补上一句: [如果遇到历史 ts 类型错误,暂不修改,先完成主线任务。完成后输出你认为需要修改的地方,由我决定要不要修改] |
8
sunny352787 7 天前
我建议用 TS ,给 AI 更多的检查错误的机会写出来的代码更好
|
![]() |
9
AlexHsu 7 天前
你最擅长什么就用什么 ai 的一些 bug 藏的很深 你在那个技术层面造诣不够 找起来可老浪费时间了
|
10
ccpp132 7 天前
我纯用 ai 做补全,光这样都遇到过好几次 bug 需要修复,不敢想象全交给 ai
|
![]() |
11
tonytonychopper 7 天前
我还以为现如今的前端项目里,TS 早就是必选了
|
![]() |
12
elevioux 7 天前
越严格越好,减少出错的可能。type 关键字也能当作上下文
|
13
nowheremanx 6 天前
个人只用 AI 进行自动补全。 几十行的一次性脚本可以让它发挥,要修改的话,直接改得面目全非,都忘了最开始的需求了。
|
![]() |
14
theprimone 6 天前
不用 TS 已经不会写代码了
|
![]() |
15
asen001 6 天前
有类型定义的情况下,AI 可以修复不少错误,体验还可以。
|
16
lanxxkk 5 天前
把规则定义好了可以减少很多错误。
|
17
liuhui244671426 4 天前
可以试试。
|