返回介绍

1 前端工程化概述

发布于 2024-09-08 16:16:08 字数 1572 浏览 0 评论 0 收藏 0

前端开发过程产生的问题

1. ECMAScript(ES)规范与浏览器兼容性不一致:想使用最新的 ECMAScript 规范进行开发,但受限于浏览器实现,需要适配旧规范。
2. CSS 的弱编程能力:想使用 LESS/SASS 等预编译语法或者 PostCSS 自动处理 hack。
3. 资源定位:本地开发静态资源引用的是本地相对路径,上线前需要修改为真实 URL。
4. 考虑产品性能:需要压缩静态资源,图片压缩/BASE64 内嵌/CSS Sprites。
5. 模块依赖分析和压缩打包:模块化开发,提高维护效率。上线前模块需要进行依赖分析和合并打包。
6. 协作层面:前端依赖后端数据
7. 部署层面:静态文件(JS/CSS/图片)与动态文件(HTML 模板) 仍然存在于同一项目,前端部分资源仍然需要后端工程师部署。

说明:针对上面七大问题。前面五大是开发问题。

前端工程化流水线要经过大概四个阶段:脚手架 --> 构建 --> 本地开发服务器 --> 部署

阶段目的功能典型工具
脚手架快速搭建前端基本环境,以聚焦业务。包括自动安装、统一工具栈等。Yeoman

构建
也叫编译。将源代码中转化成宿主浏览器能执行的代码。解决前端七大问题中的开发问题。解决依赖打包、资源嵌入、文件压缩、HASH 指纹等。构建还包括构建需要解决 3 类问题,分别是语言、优化和部署。webpack
本地开发服务器本地服务器最典型的应用是 MOCK 服务,通过模拟接口和数据解决前端 JS 对数据 API 的依赖问题,从而实现前后端并行开发。MOCK 服务。支持 SSR(服务器端渲染)。动态构建。 
部署   

表格 构建步骤的前端资源变化

源资源构建后产出资源构建动作
领先于浏览器实现的 ECMAScript 规范编写的 JS 代码 ( xx.es )JSECMAScript 规范编转译
LESS/SASS 预编译语法编写的 CSS 代码 (xx.less)CSSCSS 预编译语法转译
Jade/EJS/Mustache 等模板语法编写的 HTML 代码 (xx.jade)htmlHTML 模板渲染

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文