模块 2 · 第 4

技术栈、框架与库:为什么 AI 总说「我用 Next.js」

是什么

AI 在给出方案时经常会提到各种技术名词——Next.js、React、Tailwind。这些东西分别扮演什么角色?技术栈、框架、库,三个概念理清之后,你就能听懂 AI 在说什么了。

解决什么问题

如果搞不懂技术栈的组成,你就无法判断 AI 引入的是不是一个合理的选择,也分不清哪些是项目的根基、哪些是临时引入的额外依赖。

AI 嘴里那些技术名词

当你让 AI 帮你做一个项目时,它往往会在回答的开头说一句类似这样的话:"我建议使用 Next.js 作为框架,配合 Tailwind CSS 来处理样式,数据库可以用 Supabase。"

如果你是第一次听到这些名字,可能会有点懵——这些东西分别是什么?为什么需要这么多?我能不能就用"一种技术"把事情做完?

要理解这些,需要先认识三个基本概念。

技术栈:一层层搭起来的组合

"技术栈"这个词听起来有点专业,但它的意思其实很朴素——就是你的项目从上到下用到的所有技术,像一层层积木搭在一起。

一个典型的网站技术栈可能是这样的:

  • 最上层:用户看到的页面(前端),比如用 React 来构建。
  • 中间层:处理业务逻辑的后端,比如用 Node.js 来运行。
  • 最底层:存储数据的数据库,比如用 PostgreSQL。

每一层负责不同的职责,合在一起才是一个完整的软件系统。当别人问你"你的项目用的什么技术栈",他们想知道的就是这些层分别用了什么工具。

框架:带骨架的脚手架

框架是一套预先搭好了基本结构的"脚手架"。它规定了你的代码应该放在哪里、按什么方式组织、遵循什么约定,而你只需要在这个骨架上填入具体的内容。

以盖房子来类比:框架就像是建筑商提供的标准户型——墙体结构、承重设计、管道预埋都已经做好了,你要做的是选地板、刷墙漆、摆家具。你不需要从打地基开始,但你也需要遵守它的结构约定——比如你不能随意拆掉一面承重墙。

AI 经常提到的 Next.js、Django、Rails,都是框架。它们帮你跳过了从零搭建项目的繁琐步骤,让你能更快地进入到实际功能的开发中。

库:别人做好的现成零件

如果说框架是脚手架,那么库就是一箱箱的现成零件。

每个库解决一个特定的问题。比如有的库专门处理日期和时间的计算,有的库专门负责发送网络请求,有的库专门生成图表和可视化。你需要什么功能,就找到对应的库,像拿零件一样"装"到你的项目里。

和框架不同的是,库不会规定你的项目结构。你随时可以引入一个库,也可以随时把它换成另一个做同样事情的库。框架是你项目的骨架——换它就像换房子的结构,代价很高;库是你项目的零件——换它就像换一个门把手,相对灵活。

为什么不从零写

你可能会问:为什么不让 AI 从零开始、不依赖任何框架和库,直接写出所有的代码?

技术上当然可以,但这就像不买任何现成材料,从冶炼钢铁开始造一栋房子。不是做不到,而是代价太高、时间太长,而且你最终"冶炼"出来的钢铁质量很可能不如专业生产的。

框架和库是全球数以万计的开发者多年积累下来的成果。它们经过了大量项目的实战检验,解决了无数细节问题。善用它们,是高效构建项目的合理方式。

你需要关注的不是"为什么要用这些东西",而是"AI 选的这些东西对我的项目来说合不合适"。这就是下一步你要学会判断的事情。

指挥与验收

一边讲怎么让 AI 帮你做,一边讲怎么看出 AI 做砸了。

指挥怎么让 AI 帮你做

指挥

在让 AI 动手之前,先要求它解释清楚它打算使用什么技术栈,以及每个部分分别负责什么。不需要你完全理解细节,但你要能大致说出"前端用的什么、后端用的什么、数据库是哪个"。

连接到

术语