为什么要另起炉造
原因很简单:Webpack太慢了
早期,Webpack可以说是颠覆性的工具,它在前端的作用与我们后端Java中的Maven或Gradle有点类似....由于TurboPack是Rust语言的,所以自然选择了同样使用Rust语言的Swc,应该是非常好理解的.
SWC的转换速度是Babel的数十倍以上.
增量缓存式构建
这个主要是针对开发阶段....而TurboPack则开创性的引入构建缓存及增量式构建的创新.针对不同的构建,首先会缓存起来,而后当有文件变更需要触发再次构建时,会分析哪些可以使用缓存来构建,哪些需要重新构建....延迟加载的概念是把一个大JS文件拆分成许多非常小的JS,访问时按需加载,从网络上加载一个大JS文件性能远差于按需加载不同的小文件
这里不要搞混淆了,TurboPack引入的是按需延迟编译,与延迟加载是不同的技术...过往,Webpack都是事先编译好,而TurboPack则改变了这一模式,在你访问某个特定的页面或功能时,分析需要编译哪些文件,再进行编译.
而在编译的过程中,又会使用上面讲的增量缓存式编译.