【前端基础】02-命令式组件系统 | 声明式组件系统 | 响应式组件系统

文章目录

组件系统层次

软件开发范式

├── 声明式编程 (Declarative)

│ └── 声明式UI系统

│ ├── 响应式组件系统 (Reactive)

│ │ ├── 细粒度响应式 (SolidJS, Vue 3 Composition)

│ │ ├── 虚拟DOM+响应式 (Vue 2, React + MobX)

│ │ └── 编译时响应式 (Svelte)

│ │

│ └── 非响应式声明式

│ ├── 不可变数据流 (React with Hooks)

│ └── 传统模板系统 (早期模板引擎)

└── 命令式编程 (Imperative)

└── 命令式UI系统

├── 直接DOM操作 (jQuery, 原生JS)

├── 面向对象组件 (ExtJS, GWT)

└── 传统桌面GUI (WinForms, Swing)

比较

维度 命令式组件系统 声明式组件系统 响应式组件系统
核心理念​ 如何做 (How) 是什么 (What) 自动响应变化 (Auto-reactive What)
更新方式​ 手动操作DOM 状态→重新渲染 状态变化→自动精确更新
心智模型​ 步骤序列 UI = f(state) 状态与UI的自动连接
控制粒度​ 精细但繁琐 组件级或虚拟DOM级 变量级(最细粒度)
性能优化​ 手动优化 虚拟DOM diff,手动记忆化 自动依赖追踪,无diff
典型框架​ jQuery, ExtJS React, Vue 2, Angular Vue 3, SolidJS, Svelte

性能特征对比

操作 命令式 声明式(React) 响应式(Vue 3)
初始化​ 中等 中等
局部更新​ 最快 需要diff 直接更新
批量更新​ 手动优化 自动批量 自动批量
内存占用​ 高(虚拟DOM) 中等
首次加载​ 大(框架体积) 中等
相关推荐
0思必得04 小时前
[Web自动化] Selenium处理动态网页
前端·爬虫·python·selenium·自动化
东东5165 小时前
智能社区管理系统的设计与实现ssm+vue
前端·javascript·vue.js·毕业设计·毕设
catino5 小时前
图片、文件的预览
前端·javascript
layman05287 小时前
webpack5 css-loader:从基础到原理
前端·css·webpack
半桔7 小时前
【前端小站】CSS 样式美学:从基础语法到界面精筑的实战宝典
前端·css·html
AI老李7 小时前
PostCSS完全指南:功能/配置/插件/SourceMap/AST/插件开发/自定义语法
前端·javascript·postcss
_OP_CHEN7 小时前
【前端开发之CSS】(一)初识 CSS:网页化妆术的终极指南,新手也能轻松拿捏页面美化!
前端·css·html·网页开发·样式表·界面美化
啊哈一半醒7 小时前
CSS 主流布局
前端·css·css布局·标准流 浮动 定位·flex grid 响应式布局
PHP武器库7 小时前
ULUI:不止于按钮和菜单,一个专注于“业务组件”的纯 CSS 框架
前端·css
电商API_180079052477 小时前
第三方淘宝商品详情 API 全维度调用指南:从技术对接到生产落地
java·大数据·前端·数据库·人工智能·网络爬虫