[Javascript] 模組化: Tree-Shaking

Tree-Shaking性能優化實踐 - 原理篇
https://juejin.im/post/5a4dc842518825698e7279a9

你的Tree-Shaking並沒什麼卵用
https://juejin.im/post/5a5652d8f265da3e497ff3de

Tree Shaking in Webpack
https://juejin.im/post/5c58df43e51d457ffc1bd065

Webpack 中的 sideEffects 到底該怎麼用?
https://zhuanlan.zhihu.com/p/40052192

三大工具的tree-shaking對於無用代碼,無用模組的消除,都是有限的,有條件的。closure compiler是最好的,但與我們日常的基於node的開發流很難相容。

tree-shaking對web意義重大,是一個極致優化的理想世界,是前端進化的又一個終極理想。理想是美好的,但目前還處在發展階段,還比較困難,有各個方面的,甚至有目前看來無法解決的問題,但還是應該相信新技術能帶來更好的前端世界。

編寫時注意︰
1.使用 ES6 模組語法編寫代碼
2.工具類函數儘量以單獨的形式輸出,不要集中成一個物件或者類
3.聲明 sideEffects
4.自己在重構代碼時也要注意副作用


#Tree-Shaking, Javascript, 模組化, 刪除無用程式碼, webpack, rollup, closure compiler

留言