前端工程

前端各大技术门派:核心思想、写法、底层逻辑彻底分清

把前端框架当成武功门派,每派底层思想、编程范式、写法、响应式、做事风格完全不一样,不是只是语法不同,是思维方式都不同。

作者:洋柿子·2026-09-01·共 7 篇 · 当前 4

前端各大技术门派:核心思想、写法、底层逻辑彻底分清

把前端框架当成武功门派,每派底层思想、编程范式、写法、响应式、做事风格完全不一样,不是只是语法不同,是思维方式都不同。

我给你分成6 大门派,讲清每派差异、看家本领、性格、适用人群。


一、先总览:六大主流门派

  1. React 函数式 JSX 派
  2. Vue 模板 MVVM 派
  3. Angular 企业级强规范全家桶派
  4. Svelte/Solid/Qwik 编译型无虚拟 DOM 派
  5. 传统轻量派:jQuery/Alpine/Preact
  6. Web Components 原生标准派

二、逐门派拆解:核心差异

1)React 门派 —— 一切皆 JS,函数式流派

核心理念

HTML、CSS、逻辑全写进 JS 里,信奉函数式编程,只给基础能力,生态自己拼。

关键特征

  • 语法:JSX,没有模板,标签写在 JS 里
  • DOM 策略:虚拟 DOM,运行时 Diff 对比
  • 响应式:手动依赖,useEffect/useMemo 要自己管依赖数组
  • 架构:只做 UI 库,路由、状态、表单全靠第三方生态
  • 编程思想:组件拆分、纯函数、单向数据流

门派性格

自由、灵活、无规矩、能折腾、生态爆炸;

但容易写烂代码,需要自己定规范、自己做性能优化。

代表

React、Next.js、Remix


2)Vue 门派 —— 模板优先,MVVM 渐进派

核心理念

HTML 是老大,回归前端原始分工:模板、脚本、样式分离,渐进式上手。

关键特征

  • 语法:独立模板语法,指令 v-if v-for v-model
  • DOM 策略:Vue2 虚拟 DOM,Vue3 精细响应式 + 虚拟 DOM 结合
  • 响应式:自动依赖追踪,不用写依赖数组,开箱即用
  • 架构:官方全家桶 Vue+VueRouter+Pinia,开箱即用
  • 编程思想:MVVM、双向绑定、声明式模板

门派性格

温柔、好学、约定好、上手快、适合普通人;

规则帮你定好,不用瞎折腾。

代表

Vue2/Vue3、Nuxt


3)Angular 门派 —— 后端风格,强规范企业派

核心理念

一刀切、强约定、强类型、大而全,把后端 Java / 后端工程思想搬到前端。

关键特征

  • 语法:自有模板语法、严格 TypeScript
  • DOM 策略:脏检查 → 现在也改成 Signals 细粒度响应式
  • 架构:全家桶内置到底,路由 / 表单 / Http / 依赖注入全官方自带
  • 工程:强制模块化、依赖注入、严格代码规范
  • 编程思想:面向对象、后端工程化、约定大于配置

门派性格

规矩极多、学习曲线陡、重型、适合大型团队;

个人小项目用会觉得笨重。

代表

Angular 全系


4)Svelte / Solid / Qwik —— 编译型无虚拟 DOM 极效能派

核心理念

把工作丢给编译器,运行时尽量啥都不干,干掉虚拟 DOM,直出原生 DOM 代码。

分两支小分支:

4.1 Svelte 分支

  • 写法:回归 HTML/CSS/JS 单文件,不用 JSX
  • 响应式:编译时分析变量,自动绑定视图
  • 特点:极简、代码少、无脑写高性能

4.2 Solid 分支

  • 写法:完全模仿 React JSX+Hooks
  • 响应式:细粒度 Signals,组件只执行一次,无多余重渲染
  • 特点:React 写法,原生级性能

4.3 Qwik 分支

  • 主打零水合,首屏极速,适合官网、SEO

门派性格

极简、高性能、反虚拟 DOM、未来感最强;

不卷运行时,卷编译阶段。

代表

Svelte、SvelteKit、Solid.js、Qwik、Astro


5)传统轻量派 —— jQuery / Alpine / Preact

核心理念

不搞大框架,只做页面增强,够用就行、轻量无负担。

关键特征

  • 无构建也能跑,CDN 直接引入
  • 不搞复杂组件化、不搞重渲染
  • 适合老项目、后端模板套页、简单交互

门派性格

朴素、轻量、不内卷、够用就好。

代表

jQuery、Alpine.js、Preact


6)Web Components 原生标准派

核心理念

不用任何框架,用浏览器原生标准写组件,跨所有框架通用。

关键特征

  • 浏览器原生支持,跟 Vue/React/Angular 都能混用
  • 适合做公共组件库、微前端
  • 无框架绑定,一次编写到处用

代表

Lit、Stencil、原生 Custom Elements


三、一张表看懂各门派核心差异

表格

门派 视图写法 有无虚拟 DOM 响应式特点 生态方式 适合场景
React JSX 有 手动依赖、需自己优化 自己拼装生态 复杂交互、跨端、大项目
Vue 独立模板 有 自动依赖、开箱即用 官方全家桶 中小型项目、管理系统
Angular 自有模板 新版无 强类型 + 依赖注入 全套官方包办 大型企业团队、长期维护
Svelte 类原生单文件 无 编译时自动响应 极简内置 小中型、追求开发效率
Solid JSX 无 细粒度 Signals、无重渲染 类 React 生态 高性能、大数据、可视化
轻量派 原生 + 指令 无 简单双向 / 事件 几乎零依赖 静态页、老项目改造

四、最根本的三大底层分歧(门派分水岭)

  1. 视图该写在 JS 里 (JSX) 还是 单独模板里

    • JSX 派:React / Solid
    • 模板派:Vue / Angular / Svelte
  2. 运行时虚拟 DOM 还是 编译时直出 DOM

    • 运行时:React / Vue
    • 编译时无虚拟 DOM:Svelte / Solid / Qwik
  3. 依赖手动管理 还是 框架自动追踪

    • 手动:React
    • 自动:Vue / Svelte / Solid

五、你适合入哪个门派?

  • 喜欢自由、函数式、能接受 JSX → React 门派
  • 喜欢简单好上手、模板清晰、少折腾 → Vue 门派
  • 喜欢强规范、工程化、后端思维 → Angular 门派
  • 喜欢写最少代码、要极致性能、讨厌重渲染 → Svelte / Solid 门派
  • 只是做简单页面、不想学大框架 → 轻量 Alpine/jQuery 派

我可以给你做一份:按你学习路线,先学哪派、再学哪派、怎么循序渐进 的进阶路线图,要吗?