
- بواسطة x32x01 ||

بس قبل أي حاجة، يعني إيه Tree Shaking؟


هي عملية بيعملها الباندلر (زي Webpack أو Rollup) عشان يشيل أي كود مكتوب بس مش مستخدم (اللي بنسميه dead code).
يعني مثلًا لو استوردت مكتبة فيها 100 دالة، وانت بتستخدم منهم واحدة بس - Tree Shaking بيحذف الـ 99 الباقيين

ليه Tree Shaking مهم؟



إزاي تستفيد منه؟

Tree Shaking بيشتغل مع ES6 modules بشكل أفضل من CommonJS (require).

لو عندك دوال أو متغيرات مش بتستخدمها، امسحها فورًا


زي Webpack، Rollup، أو Vite.
وتأكد إن الـ mode على production:
Code:
webpack --mode production

زي lodash-es بدل lodash العادي.


Code:
import * as lodash from 'lodash';
console.log(lodash.debounce);

Code:
import { debounce } from 'lodash';
الفرق؟

الطريقة التانية بتقلل حجم الكود النهائي بشكل ضخم


Tree Shaking مش بس ميزة تقنية، دي طريقة تفكير في كتابة الكود.
لو كودك خفيف ونظيف، المستخدمين هيحسوا بالفرق بسرعة

لو استفدت

كنت عارف الميزة دي قبل كده ولا دي أول مرة تسمع عنها؟

التعديل الأخير: