前端术语表及名词解释
框架类
Koa.js:基于 Node.js 的新一代 Web 框架,由 Express 原班人马开发。核心特性包括:
利用 async/await 替代回调函数,简化异步代码编写。
未捆绑中间件,提供优雅的中间件扩展机制(如 app.use())。
适用于构建 Web 应用和 API 服务。
Egg.js:基于 Koa 的企业级 Node.js 框架,在 Koa 基础上增强以下能力:
约定优于配置的目录结构。
内置多进程管理、日志系统等企业级功能。
Electron.js:使用 JavaScript、HTML 和 CSS 开发跨平台桌面应用的框架,支持 Windows、macOS 和 Linux。
Nuxt.js:基于 Vue.js 的通用应用框架,核心功能包括:
服务端渲染(SSR)优化 SEO 和首屏加载速度。
自动化代码分割和路由配置。
Flutter:谷歌的移动 UI 框架,通过单一代码库构建 iOS 和 Android 原生应用,使用 Dart 语言开发。
Uni-app:基于 Vue.js 的跨平台框架,支持编译到 iOS、Android、Web(响应式)及多个小程序平台(如微信、支付宝)。
CSS 预处理工具
- Stylus:CSS 预处理器,语法简洁(可省略括号和分号),支持嵌套、变量和混合(Mixins)。
- Less:动态样式语言,提供变量、嵌套、运算和函数功能,需编译为 CSS 后运行。
- Sass:成熟 CSS 预处理器,支持变量、逻辑控制(如 @if)和模块化(@use),语法分为缩进式(Sass)和标准 CSS(SCSS)。
包管理工具
- Yarn:Facebook 等公司开发的 JS 包管理器,解决 npm 的性能问题,支持并行安装和离线缓存。
- npm:Node.js 默认包管理器,用于安装和管理项目依赖。
- cnpm:淘宝团队维护的 npm 国内镜像,同步频率为 10 分钟一次,解决国外服务器访问慢的问题。
构建工具
- Vite:基于原生 ESM(ES Modules)的现代构建工具,开发环境无需打包,生产环境使用 Rollup 打包。
- Snowpack:轻量级前端工具链,支持按需编译,避免全量重新构建。
- Webpack:静态模块打包器,通过依赖图(Dependency Graph)分析模块关系,生成优化后的静态资源(如 JS、CSS 捆绑包)。
核心概念与 API
- Polyfill:通过 JavaScript 代码为旧浏览器提供原生不支持的新特性(如 Promise、fetch)。
- core-js:模块化的 JavaScript 标准库 Polyfill,支持按需加载特定功能(如 ES6 的 Array.prototype.includes)。
- ECMAScript 6~11:JavaScript 语言规范版本,新增特性包括箭头函数、类、模块、异步编程等。
- DFA 算法:确定有穷自动机(Deterministic Finite Automaton),用于敏感词过滤等文本匹配场景,通过状态转移表高效识别关键词。
- Object.freeze():冻结对象,禁止修改、添加或删除属性,常用于性能优化或不可变数据场景。
- Babel:将 ES6+ 代码转换为向后兼容的 JavaScript 语法,支持插件扩展(如转换 JSX 或 TypeScript)。
- Hot Module Replacement (HMR):开发时动态更新模块,无需刷新页面,提升调试效率(如 Vue/React 组件热更新)。
架构模式
- MVVM:Model-View-ViewModel 模式,核心是 ViewModel 作为 View 和 Model 的桥梁,通过数据绑定实现双向同步(如 Vue 的 v-model)。
- CommonJS:Node.js 模块规范,通过 module.exports 导出和 require() 导入模块,同步加载依赖。
应用类型
- SPA(单页面应用):首次加载单个 HTML 文件,后续通过 JavaScript 动态更新内容,无页面跳转(如 React/Vue 应用)。
- MPA(多页面应用):每次页面跳转请求新的 HTML 文件,传统网站架构(如新闻站点)。
以上术语覆盖了前端开发中的主流框架、工具、语言特性和设计模式,适用于快速查阅或系统学习。