10天进阶webpack---(1)为什么要有webpack

简介: 10天进阶webpack---(1)为什么要有webpack

首先就是我们的代码是运行在浏览器上的,但是我们开发大多都是利用node进行开发的,在浏览器中并没有node提供的那些环境。这就早成了运行和开发上的不同步问题。 -----引言

浏览器模块化的问题:
效率问题:精细的模块划分带来了更多的JS文件,更多的JS文件带来了更多的请求,降低了页面访问效率
兼容性问题:浏览器目前仅支持ES6的模块化标准(不支持COMJS),存在兼容问题,当然目前其实只要不是特别老的浏览器都没有问题(可以忽略不记)。
工具问题:浏览器不支持npm下载的第三方包。
这仅是其中的一部分问题,在日常开发中遇到的业务问题就已经很头痛了,还要再关注这些兼容性,执行效率问题,会很痛苦。
node的问题更少
上面提到的问题,在node端没有那么明显,在node端,运行的JS文件在本地,因此可以本地读取文件,它的效率比浏览器远程传输文件高的多。出现构建工具的根本原因还是在浏览器端,开发时态(devtime)和运行时态(runtime)的侧重点不一样。开发的时候对于工作人员来说,模块划越细,代码书写越整洁越好,而对于浏览器运行来说呢,文件越少越好(减少请求次数),代码越少越少好(进行代码压缩,混合)。

具体:
开发时态,devtime:

模块划分越细越好
支持多种模块化标准
支持npm或其他包管理器下载的模块
能够解决其他工程化的问题
运行时态,runtime:

文件越少越好
文件体积越小越好
代码内容越乱越好
所有浏览器都要兼容
能够解决其他运行时的问题,主要是执行效率问题
解决办法
既然开发时态和运行时态面临的局面有巨大的差异,因此,我们需要有一个工具,这个工具能够让开发者专心的在开发时态写代码,然后利用这个工具将开发时态编写的代码转换为运行时态需要的东西。

这样的工具,叫做构建工具
这样一来开发者就不需要去关注什么我该使用什么样的导出导入方式,兼容性问题,你会在需要的时候调用构建工具使他转换目标代码。

看到了很多webpack和vite的面试题,但是本人一开始看的时候看的不是很懂,别准备写一个连载博客,讲解每一个知识点和附带的webpack的面试题。

相关文章
|
7月前
webpack成长指北第3章---常用webpack命令及使用webpack命令的方式
webpack成长指北第3章---常用webpack命令及使用webpack命令的方式
62 0
|
1月前
|
缓存 前端开发 JavaScript
webpack 原理
【10月更文挑战第23天】Webpack 原理是一个复杂但又非常重要的体系。它通过模块解析、依赖管理、加载器和插件的协作,实现了对各种模块的高效打包和处理,为现代前端项目的开发和部署提供了强大的支持。同时,通过代码分割、按需加载、热模块替换等功能,提升了应用程序的性能和用户体验。随着前端技术的不断发展,Webpack 也在不断演进和完善,以适应不断变化的需求和挑战。
|
7月前
|
缓存 JavaScript 前端开发
webpack超详细教程,学webpack看这一篇就够了!(下)
webpack超详细教程,学webpack看这一篇就够了!(下)
|
7月前
|
缓存 JSON 前端开发
webpack超详细教程,学webpack看这一篇就够了!(上)
webpack超详细教程,学webpack看这一篇就够了!(上)
|
JavaScript 前端开发
webpack原理解析(一)实现一个简单的webpack
Webpack 是当下最热门的前端资源模块化管理和打包工具。它可以将许多松散的模块按照依赖和规则打包成符合生产环境部署的前端资源。还可以将按需加载的模块进行代码分隔,等到实际需要的时候再异步加载。webpack如此强大,其内部机制到底是怎样的,今天我们来一探究竟。
|
JavaScript 前端开发
webpack 02 - 进阶使用
webpack 02 - 进阶使用
|
缓存 JSON 自然语言处理
webpack 笔记
1.1 webpack 五个核心概念 1.1.1 Entry 入口,指示webpack以哪个文件为入口起点开始打包,分析构建内部依赖图
103 0
|
JavaScript 前端开发 网络安全
webpack学习
webpack学习
136 0
webpack学习
|
JSON 资源调度 JavaScript
webpack看这一篇就够了(二)
webpack看这一篇就够了(二)
177 0
webpack看这一篇就够了(二)
|
缓存 资源调度 JavaScript
webpack看这一篇就够了(一)
webpack看这一篇就够了
135 0
webpack看这一篇就够了(一)