AI 都能写代码了,为什么还要懂概念
「AI 把代码都写好了,为什么还需要前端知识」——我常被问到这个问题。答案很简单:不懂概念,你能让 AI 做的事就停在那里。工具只负责执行指令,而指令什么,取决于下指令的人脑中的那张地图。
React、npm、构建、SSR 这些词不是要背的词汇表,而是一条问题解决的连锁。每一个都是为了解决在上一步已解决的基础上新冒出的问题而出现。看不到这层连接,你就既失去了审核 AI 产出的标准,也失去了判断下一步该让它做什么的依据。
网络是以「解决一个问题、又生出下一个」的方式长大的
网络始于 1989 年,是一个把研究文档用链接串起来共享的系统。想给文档做装饰,于是有了 CSS;想让画面对用户作出反应,于是有了 JavaScript。页面变复杂、代码爆炸后,为了驾驭它,经由 jQuery 走到了 React;为了拿来别人做好的零件,有了 npm;为了把浏览器还读不了的最新语法转换成它能理解的形式,出现了构建过程。
想要像 App 一样顺滑的体验,便转向在浏览器内处理画面切换的 SPA——结果这次页面又在搜索引擎里找不到了。于是又绕回 SSR,在服务器上先把画面渲染好再发送。正是这条「每一步催生新问题、新问题又召唤下一个工具」的脉络,构成了今天被称为前端的这片真实地形。
同样的工具,产出为何天差地别
这条脉络装进脑中后,你就不再追问 package.json 为什么存在、构建为什么要插进来。更重要的是,你给 AI 的指令变了。原本停留在「把按钮做得好看点」的指令,变成了「当这份数据变化时,让那个画面也跟着一起变」。
前一种指令把 AI 当成装饰师;后一种则递给它一个有名有姓的问题——状态一变、画面就得跟着变,而这正是 React 当初要解决的那个问题。同样的工具产出为何天差地别,原因就在这里。决定结果的不是工具的性能,而是你在多精确的层次上下达指令。
为什么 Vibe Coding 教学先讲历史、再讲工具
技术的演化方式是:解决了一个问题,就地又生出一个新问题。所以非开发者与 AI 协作时真正需要的,不是背诵语法,而是这张演化地图。握有地图的人,即便工具更迭,也能为任何新工具定位——「它是为解决哪个问题而生」——并当场做出精确的指令。
这正是 SH Consulting 在 Vibe Coding 教学中先讲历史、后讲工具用法的原因。快捷键和命令半天就能学会,但「这个工具为何存在」的直觉,只有顺着谱系走一遍才会长出来。在 AI 时代,变得稀缺的能力不是会启动工具,而是准确知道该让它做什么。