编辑
2025-10-26
前端
00

目录

我做了什么
项目截图
项目背景
需求分析
技术栈选型
交互细节
编码经验
选用足够强大的AI编辑器
使用编码能力足够强大的模型
提示词工程技巧
上下文工程技巧
灵活使用工具
灵活使用模型的多模态能力
使用适合AI的编程方式
实际操作
创建指令文件
根据模糊的需求确定清晰的计划
调用待办工具生成任务
其他参考内容
打造一个酷炫的界面
全自动编程
生成草图、UI
总结

最近我使用AI完成了一个较为大型的全栈项目的开发。我使用VSCode Copilot + Claude 4模型,仅靠提示词、部分手动修改的错误和代码审查,在两天半的时间里,完成了一个代码量2w+的网盘系统90%的代码都是由AI完成的

最近我使用AI完成了一个较为大型的全栈项目的开发。

我做了什么

我使用VSCode Copilot + Claude 4模型,仅靠提示词、部分手动修改的错误和代码审查,在两天半的时间里,完成了一个代码量2w+的网盘系统90%的代码都是由AI完成的

仓库:https://github.com/healwrap/yunxia (欢迎大家点点star)

项目截图

首页

任务队列管理页面

文件管理页面

  • 支持上传文件

  • 新建文件夹

  • 修改文件名

  • 删除文件

  • 分享文件

  • 下载文件

分享文件管理页面

  • 增删改查

  • 下载分享文件

回收站

项目背景

项目的背景如下,主要是提供给AI的上下文信息,同时也是自己梳理功能点应该注意的地方。

具体文档在飞书知识库中,供我和我的开发伙伴使用,这里简单提一提。

网盘系统对标的是市面上常见的产品,如:百度网盘、夸克网盘等等系统。目标是实现它们所包含的基本功能、甚至在某些功能上,体验要优于它们。

需求分析

网盘系统的需要实现的功能大概包括

  • 文件管理

  • 分享管理

  • 回收站管理

  • 下载管理

  • 空间管理

具体细节不展开了,这都是很简单的功能,百度或者AI都能给你详细的设计

技术栈选型

我个人是熟悉Vue偏多的,最近想要全面掌握React、NodeJS后端等等,给自己多增加几项技术栈,于是我选用的技术栈如下:

  • 前端: React + TypeScript + Vite + Ant Design + TailwindCSS + Zustand

  • 后端: Koa + TypeScript + TypeORM + PostgreSQL

  • WebAssembly: 自定义哈希计算包(仅作演示,实际项目使用hash-worker包)

  • 认证: Clerk 用户管理系统

这里的细节也不需要纠结,本文主要是针对AI Coding细节进行讲解的。

交互细节

还需要针对项目中的一些细节做出大概定义(后续可以让AI给你完善),如

  • 数据库表设计

  • 文件秒传功能设计

  • 断点续传功能设计

  • 前端基本架构设计

  • 后端基本架构设计

  • 等等...

注意:这些都是可以让AI进行完善的细节,但是你必须思考清楚,自己这个项目应该朝着一个什么方向编写。否则AI极其容易写出混乱、错误的逻辑。

编码经验

很明显,当今任何AI产品都无法完全做到,用户输入一个提示词,AI完完全全自主完成所有功能,并且按照用户预期想法完成,这是目前做不到的。

如何让AI工具为我们所用呢?我的经验如下:

选用足够强大的AI编辑器

如:Claude Code、Cursor、Trae、Kiro、Augment Code、VSCode Copilot等等

Copilot 早期真的很难用,但是随着近期更新,它也比较好用了,主要是靠它可以通过Github学生包免费使用,本项目也基本90%的编码都是通过它完成的

但是你要说它好,肯定还是不如其他一些更强的工具的,只能说够用。

使用编码能力足够强大的模型

如:Claude 3.7/4、GPT5等等

选择模型这一块,也有讲究,Claude模型虽然强大,但在处理一些小问题时,3.7 4.0 的效果不如 3.5,可能前者是专为大型项目而生,再简单的功能,也会写出一堆精致的废物代码出来,而3.5在简单需求上的处理就远好于前者。

这里我不得不感慨,Claude模型的编码能力、逻辑思维能力之强大,简直超过其他同类型模型一大截。

从今年三月左右我使用Claude 3.7模型完成了一个公司内使用的浏览器插件,到如今使用Claude模型几乎完成80-90%的代码编写,AI的强大让我感到震惊且恐慌。

提示词工程技巧

让AI能够正确理解你的指令

我这里参考的是Copilot文档中提到的技巧 Prompt engineering for GitHub Copilot Chat - GitHub 文档

上下文工程技巧

让AI能够理解你的项目

上下文工程原本指:精心设计输入给大模型的内容。意思是因为大模型的上下文长度有限,当我们希望大模型理解海量内容时,我们需要精心设计好输入给大模型的内容,既不超过上下文长度,又能让大模型能够理解内容。

在我本次的实践中,遵循了以下原则:

  1. 提供背景:我们需要提供给大模型我们项目的大概情况,如项目大概是干什么的、技术栈是什么、一些大概的功能交互是怎么样的、数据模型是怎么样的、开发方式是怎么样的,等等。这个一般是让AI生成一个提示文件,如Copilot的“生成指令”功能,生成的copilot-instructions.md。用户每次提问,编辑器都会自动带上此文件,让AI可以准确回答问题,并减少出错概率。

  2. 提供文档:当我们使用一些冷门的库时,AI可能会因为缺少训练数据导致回答错误。这个时候我们可以使用工具给AI提供文档。如context7 MCP、编辑器默认的提取网页工具、手动粘贴文档等等

  3. 拆分对话:我们需要根据自己对需求的理解,每次只在一个对话中完成需求,而不要在一个对话中频繁对话,导致上下文不足。

  4. 压缩对话:当我们需要在一个对话中完成时,且上下文长度不足时,使用压缩对话功能(但是前提是不要在需求完成到一半的时候压缩,这样会导致AI对任务识别不清楚)

  5. Todo任务清单:当我们完成一个复杂的需求时,需要使用任务清单工具,让大模型无论上下文长度多长,都能清晰知道要干什么,而不是干了一会儿之后忘记要干什么了。

灵活使用工具

我这次的全栈项目,使用的工具如下

  1. dbhub MCP,可以让AI操作数据库,在全自动这方面,以及问题排查方面会更好

  2. context7 MCP,可以让AI读取最新库的用法,比如此次项目中使用Antd、clerk、hash-worker、AssemblyScript等等技术栈,我都尽量让AI查询用法后再编码,防止因为训练数据的问题导致回答出错

  3. 大模型的图像识别能力,有的情况下,我们可以直接截图给模型,让模型理解图片并修复问题

同时,工具不是越多越好,过多的工具会占用模型上下文,导致模型变笨,你需要适当减少工具的使用,让模型回答更精准。

灵活使用模型的多模态能力

大模型支持多模态能力,比如图像识别,你可以让AI多帮你做很多事

  1. 你可以画产品UI,模型可以根据你的图片还原出一个类似的页面

  2. 你可以复制一些UI网站的图片,模型可以仿照它完成功能

使用适合AI的编程方式

  1. 使用便于AI编程的语言和框架,比如

    1. 原生HTML+原子类名等等,AI几乎完美适配这种编程方式。尽管写出的代码让人无法理解和维护,甚至因为缺少代码拆分,AI都可能难以维护

    2. React框架,因为它非常流行、且生态庞大,所以训练数据中会包含大量与此相关的内容,所以编码能力会更强

  2. 使用便于AI Coding的一些库,比如

    1. Tailwind CSS,这个库简直是为AI而生,他可以使用少量代码生成界面(尽管这些原子类名对人类不友好,但是对AI很友好)

    2. shadcn等Tailwind CSS构建的UI库

  3. 减少lint、甚至不要开启

    1. lint规则会极大影响AI编码,让AI重复进行很多次没有什么实际作用的lint修复,增加上下文。但是我的项目我希望开启一定的lint规则,所以我在提示词中尽量让AI先使用eslint --fix命令修复文件问题之后再手动修复
  4. TS规则不要过于严格

    1. 在AI项目中,TS的类型提示绝对是友好的,不仅是让AI写出便于人类理解的代码,同时也可以帮助AI检查出它输出的代码的一些问题(比如库、方法找不到、类型不兼容等等)

    2. 但是过于严格的TS规则会导致AI编码困难,且需要频繁修复问题

实际操作

创建指令文件

指令文件可以让AI理解项目,并选择合适的命令进行开发调试,这个功能类似Claude Code 的 init

根据模糊的需求确定清晰的计划

我们大部分时候没有办法给到AI十分准确的计划,AI可能也不清楚我们要干什么,会导致实际干的和预期不符合,我们就可以让它先生成简单的计划方案,审核后在让它创建任务执行。

调用待办工具生成任务

待办工具可以让AI不容易产生偏移,准确完成需求

其他参考内容

打造一个酷炫的界面

  • https://mobbin.com/ 提供丰富的UI设计灵感,通过截图在AI 编辑器中一键还原UI稿

全自动编程

如果你更希望让AI全自动完成需求,并一键部署,可以试试类似v0等的平台

比如使用一张来自mobbin的UI稿截图,v0就能够全自动构建一个页面,页面的还原度还是很高的

v0中还原的界面

mobbin UI稿截图

同时,还可以将生成的代码,直接在本地运行

生成草图、UI

你可以利用AI生成静态的HTML页面作为草图。

但是吧,我个人觉得没啥用,因为AI生成的都是“蓝紫蓝紫”的界面,并不好看

总结

如今的AI已发展到让人难以想象的地步了

这次只是简单需求,AI编写的代码其实也有很多问题,在公司实习时,我其实也尝试用AI写代码,奈何业务过于复杂,AI既没有训练数据,也理解不了,导致其实AI的帮助很小。

但是一些中小项目,完全可以让AI替代人来编写代码了,不局限于只是修修Bug。

对于前端来讲,AI的冲击太大了... 随便一句提示词,就能完整复刻一整个网站。

今天是简单Demo,可能明天就可以正式替代程序员干活了....

往期文章

如果对你有用的话,可以打赏哦
打赏
ali pay
wechat pay

本文作者:pepedd864

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!