构建工具到底是什么呢? 一篇帮你搞懂

简介: 构建工具到底是什么呢? 一篇帮你搞懂


什么是构建工具

一 . 企业级别项目都可能会具备哪些功能

  1. typescript: 如果遇到ts文件我们需要tsc 将typescript代码转换为js代码
  2. React/ vue :安装react-compiler / vue-compiler, 将我们写的jsx文件或者vue文件转换为render函数
  3. less / sass / postcss/ component-style : 我们有需要安装sass-loader / less-loader / postcss-loader / component-style-loader等一系列的编译工具
  4. 语法降级 : babel ====> 将es的新语法转换为旧版本浏览器可以识别的语法
  5. 体积优化: uglifyjs ====> 将我们的代码进行压缩变成体积更小性能更高的文件
  6. ....

二. 引出问题

稍微修改一点东西,就需要重新走一边流程, 非常的麻烦

APP.tsx=>tsc=> App.jsx => React-compiler => js文件

如果有一个东西 能够把 tsc react-compiler ,less, babel uglifyjs 全部集成在一起

我们写的代码一旦发生变化, 就有人帮我们自动取tsc,react-compiler,less,babel,uglifyjs全部挨个走一遍, 然后返会js文件

三. 一个构建工具干了什么:

  1. 模块化开发: 支持直接从node_moudles引入代码 + 多种模块化开发
  2. 处理代码兼容性: 比如babel的语法降级, less,ts 语法转换(不是构建工具做的, 是构建工具将这个语法对应的处理工具集成,然后进行自动化处理 )
  3. 提高了项目性能: 压缩文件 "代码分割"
  4. 优化开发体验: 构建工具会帮你自动监听文件的变化,当文件变化之后自动帮你调用对应的集成工具重新编译打包,然后再在浏览器重新运行(整个过程叫做热更新,即hot replacement)
  5. 开发服务器: 跨域的问题,用react-cli create-react-element vue-cli 解决跨域问题

四. 总结:

构建工具他让我们可以不用每次都关心我们的代码在浏览器是如何运行的,我们只需要给构建工具提供一个配置文件(这 个配置文件也不是必须的,如果不给他,他会有默认的帮我们去处理),

有了这个集成的配置文件之后,我们就可以在下次需要更新的时候调用一次对应的命令就好了,如果我们再结合热更新,  我们就更加不需要管任何东西,这就是构建工具去做的东西.

他让我们不用关心生产的代码是如何在浏览器运行的,只需要关注我们的开发如何舒服怎么来就ok  这个东西就是构建工具


目录
相关文章
|
缓存 Go
Go语言依赖管理和工程结构完全攻略
Go语言依赖管理和工程结构完全攻略
78 0
|
自然语言处理 JavaScript 前端开发
从 rollup 初版源码学习打包原理
从 rollup 初版源码学习打包原理
54 0
|
存储 Go 开发工具
Go语言的依赖管理 | 青训营笔记
Go语言的依赖管理 | 青训营笔记
143 1
|
敏捷开发 XML 存储
初窥项目构建
初窥项目构建
143 0
初窥项目构建
|
缓存 JSON JavaScript
30分钟搞懂Rollup+Typescript工程构建(一)
最近在研究一个ngptcommit命令行工具,然后想通过Rollup+Typescript去编译的时候,发现对Rollup和Typescript的编译配置有点陌生,所以希望通过本文能够对其有个系统的认知。
260 0
|
JSON JavaScript 前端开发
30分钟搞懂Rollup+Typescript工程构建(二)
在本文中不讨论Typescript的具体用法,我们将学习如何将Typescript代码转为JavaScript。
527 0
|
缓存 前端开发 JavaScript
前端工程化的学习(偏向vite构建工具)
前端工程化的学习(偏向vite构建工具) 好早就听说了vite,也早就简单的使用并了解了一点,之前在公司实习团队也正在迁移webpack的项目到vite,但我自己却一直没有深入,毕竟还是初级前端工程师,功力还欠缺很多,但最近封装了一个小组件,整个项目不使用脚手架挺难受的,到处参考别人的代码希望能找到组件开发的最佳实践,整个过程举步维艰,所以开始先从vite入手学习一下前端工程化相关的东西了...
363 0
|
JSON 前端开发 数据可视化
umi3源码探究简析
作为蚂蚁金服整个生态圈最为核心的部分,umi可谓是王冠上的红宝石,因而个人认为对于整个umi架构内核的学习及设计哲学的理解,可能比如何使用要来的更为重要;作为一个使用者,希望能从各位大佬的源码中汲取一些养分以及获得一些灵感
256 0
|
编解码 前端开发 JavaScript
前端工程化中重要概念之构建工具
前端工程化中的构建工具是指用于自动化构建、打包和部署前端代码的工具。它可以大幅提高前端开发效率和代码质量,同时也可以减少人工操作的错误和风险。本篇文章将从以下几个方面介绍前端工程化中的构建工具。
209 0
|
Web App开发 编解码 自然语言处理
rollup 实战第二节 搭建开发环境
在上一篇博客中,我简单的描述了 rollup 怎么使用,配置文件的使用。这一篇,来一起学习一下 rollup 怎么搭建开发服务,这里不包含任何的框架代码,我们需要 实现的是 ,我 在代码中修改任何地方,rollup可以自己监听到,并且给我给我更新浏览器就行。 这里的代码包括 css, 以及js等。