真的有人在乎你用什么框架吗?

MMaximilian Schwarzmüller
Computing/SoftwareSmall Business/StartupsAdult EducationInternet Technology

Transcript

00:00:00在 2026 年 4 月的今天,随着 AI 领域发生的一切,
00:00:23以及 AI 模型、甚至更重要的 AI 代理工具(如 Cloud Code 和 Codex 等)的进步,
00:00:31像你我这样的开发者对技术栈的选择究竟有多重要?
00:00:42我制作过关于这些工具的视频,如果你感兴趣,我还有一些关于 Cloud Code 和 Codex 的热门课程。
00:00:57但今天我想深入探讨并分享观点的问题是:开发者的技术栈选择有多重要?
00:01:16它们依然重要吗?还是我们应该让 AI 来决定?或者更相关的,我们是否应该基于“即将使用 AI”这一事实来做决定?
00:01:29我会告诉你们我的意思。当然,不关心技术栈最基本的形式是——
00:01:47顺便说一下,我主要会从 Web 开发者的视角来讨论,因为这是我的主业,但我认为这适用于所有类型的开发者。
00:02:09你可以选择一条容易的路,比如你正在使用像 Cloud Code 之类的工具,这没关系,你并不真正关心所选的技术栈。
00:02:16谁在乎你用的是 TypeScript、Next.js 加 React,还是原生 JavaScript 和 TanStack Start?
00:02:45或者你用 Angular 而不是 React?谁在乎呢,对吧?让 AI 去决定好了。
00:02:59你当然可以这样做,但这里我们就进入了“氛围编程 (Vibe Coding)”的领域,因为作为开发者,你没有做出任何选择。
00:03:16一旦你停止做决定,一旦你停止引导 AI 并开始不关心代码,这就是我对“氛围编程”的定义。
00:03:44当然,这是一种可以说“这些选择不再重要”的方式,我稍后会回到这个问题上。
00:04:06另一个可能更相关的方面是,你可以争辩说,是的,你作为开发者仍然在做选择,
00:04:28但最终这个选择受到了你将大量使用 AI 来辅助开发过程这一事实的影响。
00:04:43你会审查代码,你关心代码,你不是在搞“氛围编程”,但尽管如此,因为你打算大量使用 AI,
00:05:06你会使用一个你知道 AI 擅长的技术栈。比如使用 TypeScript、Next.js 和 React,
00:05:24因为你知道这些技术有大量的训练数据,AI 在这方面的表现会很好。
00:05:36这就是两个主要观点:第一种是不在乎,即让 AI 选择的“氛围编程”法;
00:05:53第二种是让 AI 影响我们的选择。我认为这两种方法都有点错误,而且目光短浅。
00:06:13我认为作为一名开发者,现在比以往任何时候都更需要对你将要使用的技术栈有自己的见解,
00:06:28去做出明智的决策,因为开发者的工作方式显然正在发生转变和变化。
00:06:43我们写代码越来越少了,我写的代码确实变少了。也许你不同,也许你永远会不同,
00:06:51但从整个行业来看,很明显正发生着巨大的转变,开发者写更少的代码,转而编排和使用这些 AI 代理及工具。
00:07:01这当然意味着我们所做的选择和决定变得更加重要。如果你陷入“氛围编程”的隧道,
00:07:09让 AI 来做选择和决定,由于显而易见的原因,作为开发者这可能不是一个美好的未来。
00:07:20因为如果你只是向 AI 提问,而没有任何见解,也不对它产出的代码产生任何影响,谁还需要你呢?
00:07:34没人需要那样的开发者。那将一事无成。
00:07:45对于快速构建原型、或者构建只需要做好一件事且无需关心边缘情况、漏洞或安全的内部应用,这可能是一个不错的方法。
00:08:00确实存在一些场景,这种“氛围编程”是有效的方法。这对于不懂编程但想轻松构建自己所需软件的人来说也很有用。
00:08:10尽管“氛围编程”有其缺点,但我认为它有其存在的目的。
00:08:17在某些用例下这是一个不错的决定,但显然在这种情况下技术栈并不重要,
00:08:31而那些搞“氛围编程”的人甚至可能不知道外面存在哪些选项。
00:08:44现在谈谈“让 AI 影响选择”这一点,我个人认为这在一年前可能还是个有效的论点,
00:09:04甚至在那时也不一定成立,但今天绝对不再成立了,我会告诉你原因。
00:09:20显然 AI 有它“偏爱”的技术栈。我以前在其他视频里也说过,如果你让 AI 自由发挥,走“氛围编程”的路,
00:09:34在 Web 开发领域,你大概率会得到一个 TypeScript、React、Next.js、Tailwind 的项目。
00:09:51这是 AI 的首选技术栈,这当然是有原因的。显然,训练数据中包含大量的 React、Next.js 和 Tailwind 项目。
00:10:07但如果我们换个角度看训练数据,把 2010 年代早期的代码也包含进来,
00:10:24显然那里不会有 Tailwind,TypeScript 项目也会少得多甚至根本没有,也不会有 Next.js 项目。
00:10:43所以很明显,训练数据中同样存在大量的原生 JavaScript 和 jQuery 项目。
00:10:57但这些不是 AI 首选技术栈的原因,不仅仅是因为它见过的数据量,量虽然重要但不是唯一因素。
00:11:03还因为这些 AI 模型,无论是由哪个供应商提供的,都会经历不同的阶段。
00:11:14有预训练阶段、微调阶段、强化学习阶段。在所有这些阶段中,模型供应商都在塑造这些模型及其行为。
00:11:28此外还有系统提示词。如果你使用 Cloud Code 之类的工具,会有一个隐形的系统提示词,指令 AI 模型以特定方式行动。
00:11:42我们已经看到这些模型确实被引导去偏好某些技术,比如 TypeScript 和 React。
00:11:51这是为什么?因为特别是 TypeScript,它是一种非常适合 AI 的语言,
00:12:03因为它能通过检查类型错误来验证自己生成的代码。显然这不是唯一的验证方式,
00:12:17一个没有类型错误的代码库并不一定是好的代码库,也不一定能按你想要的方式运行。
00:12:23但这是一个指标。据我所知,它往往比原生 JavaScript 表现得更好。
00:12:30这些就是为什么 AI 拥有那套首选技术栈的原因,也是为什么你可能会得出“采用这套或相关的技术栈是个好主意”的结论。
00:12:34例如,你可能决定不使用原生 JavaScript,因为你听我说过 AI 能从 TypeScript 这种类型安全语言中获益。
00:12:44这可能确实有一定的道理,但在 2026 年 4 月的今天,事实已经被反复证明,我的经验也是如此,
00:12:49即 AI 以及像 Claude Code 这样的 AI 代理,非常擅长处理你扔给它们的任何技术栈。
00:12:55过去,使用一些非常新、且训练数据极少甚至完全没有的库或框架确实会让人感到苦恼,但现在情况不同了。
00:13:02作为使用 AI 的开发者,你可以直接去任何你想用的库的文档页面。比如你想用最新版的 Nuxt.js 或 Svelte 5。
00:13:12或者是相对较新的 TanStack Start。你可以去这些项目的文档,挑选相关的文章,直接丢进当前对话的上下文里,
00:13:19这样 AI 就能了解这些文档。它能够理解看到的示例代码和解释,并将其应用到你的代码库中,
00:13:28所以你绝对可以在项目中使用那些训练数据中尚未包含的非常新的库。
00:13:35而且现在你通常甚至不需要手动去找文档。相反,如果你有一个足够具体的提示词,告诉它你想用某个库(比如 TanStack Start),
00:13:45并让 AI 去查找文档,或者你给它一个像 Context 7 这样的 MCP,或者像 Claude Code 这样的 AI 代理,
00:13:52它们都有联网搜索功能。你可以信任它会进行网页搜索并找到相关的文档。当然,你也可以通过“技能 (Skills)”来影响这一点。
00:13:59我有一个“代码研究技能”,我告诉 AI 对于我使用的某些提示词,它应该查看该技能,我在那里描述了它应该如何查找文档。
00:14:09如果你有类似的东西,通常就不需要自己提供文档了。相反,AI 可以自行寻找并按需引入相关的文档。
00:14:20令人惊讶的是,作为一名开发者,你当然仍然可以写代码。
00:14:30事实证明,如果你已经有一个项目,AI 往往会模仿其中已有的内容,例如代码风格。
00:14:41如果你创建了一个项目,并在其中编写了一些函数或路由,无论你使用的是 Nuxt.js 还是 TanStack Start,
00:14:53AI 都会捕捉到这些信息,它通常不会在一个 TanStack Start 项目里突然开始使用 Nuxt.js 的语法和特性。
00:15:08所以,现有代码、引入正确的上下文、引导 AI 查阅并包含文档,
00:15:20所有这些因素结合在一起,使得现在使用非默认的、或者包含 AI 并不熟知的技术的架构变得非常容易。
00:15:30这是我的经验。我也在 X 上读过很多其他人的分享,他们的经历也非常相似。
00:15:40所以这在今天绝对是可行的。也许一年前还没这么容易,但今天绝对行得通。
00:15:44这让我回到了最初的问题:技术栈的选择还重要吗?
00:15:56因为你能做出选择、不被强迫走那两条路,这固然很好。但它重要吗?我认为非常重要。
00:16:04正如我最初说的,这是将开发者与非开发者区分开来的标志之一。不是唯一的标志,但也是一个标志。
00:16:16不同的项目能从不同的技术栈选择中获益。是的,理论上你可以用任何(或大多数)技术栈构建任何东西,
00:16:23而且通常它可能并不重要,但它 *可以* 变得很重要。如果你正在做一个性能至关重要的项目,
00:16:35我指的不是 10 个用户的性能,而是大型项目。你可能更倾向于选择像 Go 这样的后端语言,

Key Takeaway

在 AI 自动编码普及的 2026 年,开发者必须通过主动选择最适合项目性能的技术栈而非盲从 AI 默认的 TypeScript/React 组合,来区分专业开发与缺乏见解的“氛围编程”。

Highlights

在 2026 年 4 月,AI 代理工具如 Claude Code 和 Codex 已显著减少开发者手动编写代码的需求,使工作重心从编码转向系统编排。

即便 AI 偏好带有大量训练数据的 TypeScript、React 和 Next.js 技术栈,开发者仍能通过提供最新文档或使用 MCP 工具让 AI 熟练处理 TanStack Start 或 Svelte 5 等新技术。

TypeScript 因具备类型错误检查机制,能为 AI 生成的代码提供即时验证指标,使其在 AI 辅助开发中的表现通常优于原生 JavaScript。

仅依赖 AI 默认选择并放弃决策权的“氛围编程 (Vibe Coding)”会导致代码漏洞、安全风险及边缘情况处理能力的缺失。

通过在项目中建立初始代码风格、函数或路由,AI 代理会精准模仿既有架构,避免在特定框架项目中混入不兼容的语法。

Timeline

AI 时代下的技术栈决策现状

  • AI 模型与代理工具的进步引发了开发者对技术栈选择必要性的重新审视。
  • “氛围编程”定义为开发者停止做出技术决策并完全交由 AI 引导的行为。
  • 放弃对代码的引导和技术栈的关心是开发者失去核心竞争力的开始。

随着 2026 年 Cloud Code 等工具的普及,开发者面临是否让 AI 决定技术栈的选择。虽然可以选择原生 JavaScript 或 Angular 等任何技术,但完全不加干预的开发方式被视为一种危险的趋势。这种缺乏见解的开发模式虽然看似高效,却削弱了开发者在项目中的主导地位。

AI 偏好特定技术栈的深层原因

  • 开发者往往因为 AI 擅长处理训练数据充足的 React 和 Next.js 而受其影响做出选择。
  • AI 供应商通过微调、强化学习和系统提示词引导模型偏好 TypeScript 等类型安全语言。
  • 编码量的减少意味着开发者的工作性质已转变为对 AI 代理的编排与决策。

AI 展现出对特定技术栈的明显偏好,主要源于互联网上庞大的代码训练库。TypeScript 受到青睐是因为它能通过类型检查自行验证代码正确性,为模型提供反馈指标。行业正发生巨大转变,若开发者在编排工具时不具备独立见解,其职业价值将面临归零风险。

氛围编程的适用场景与局限性

  • 氛围编程适用于快速原型开发、内部工具或不关心边缘情况的应用。
  • 非专业人员通过 AI 直接构建所需软件是氛围编程的主要正面用途。
  • 忽略漏洞、安全性和系统架构的开发方式不适合生产环境的大型项目。

虽然氛围编程在专业开发中存在风险,但在特定场景下具有存在意义。对于只需实现单一功能且无需考虑复杂安全策略的临时应用,这种方式非常有效。它降低了非编程人员进入软件开发领域的门槛,但使用者往往对可选的技术架构一无所知。

打破 AI 训练数据限制的技术手段

  • 通过将最新文档放入对话上下文,AI 可以即时学习训练数据之外的新框架。
  • 具备联网功能的 AI 代理能利用 Context 7 等 MCP 工具自主检索并应用技术文档。
  • AI 会通过模仿项目现有代码风格和路由逻辑来维持架构的一致性。

一年前的技术限制在 2026 年已不复存在,AI 代理如 Claude Code 表现出极强的环境适应力。开发者不再需要拘泥于 AI 熟悉的旧版本库,只需提供 Nuxt.js 或 TanStack Start 的最新文档,AI 即可理解示例代码并将其应用于当前项目。这种能力使得采用非主流或前沿技术架构变得异常简单且低成本。

技术决策作为开发者的核心标志

  • 针对不同项目需求选择特定技术栈是专业开发者的标志性技能。
  • 大型高性能项目可能需要从 Web 框架转向 Go 等后端语言以获取最佳效果。
  • 技术栈的选择直接影响项目的长期维护性与性能表现。

尽管 AI 可以处理任何技术,但“能用”并不代表“最优”。在性能至关重要的超大型项目中,盲目跟随 AI 的默认选择可能会导致系统瓶颈。开发者根据项目规模、并发需求和业务逻辑做出明智的技术决策,依然是区分专业人士与普通工具使用者的关键边界。

Community Posts

View all posts