Sunday, January 8, 2017

Webpack - module bundler

Webpack কি?
 Webpack হচ্ছে একটা module bundler. যার কাজ হচ্ছে আলাদা-আলাদা এক্সটেনশান এর Module এবং তার সব ধরনের dependency গুলোকে নেয় এবং তা ইন্টারপ্রেট করে একটা Single asset আকারে রুপান্তর করে যা Browser এর পড়ার জন্যে সুবিধাজনক।



Webpack ইউজ করার সুবিধা কি?
  • Initial loading এর জন্যে webpack অনেক কম সময় নেয়।
  • যে কোন ধরনের Static asset কেই module আকারে ইউজ করা যায়।
  • Third party library ইউজ করা যায়।
  • Module bundler এর প্রায় সব কিছুই নিজের মতো করে কাস্টমাইজ করে নেওয়া যায়।
  • জায়ান্ট প্রজেক্টের জন্যে সুবিধাজনক।




Webpack এর কয়েকটি উল্লেকযোগ্য বৈশিষ্টঃ
Code Splitting
Webpack এর dependency tree তে দিও ধরনের dependency আছে, আর তা হলো Synchronous এবং Asynchronous . Async dependency গুলো অনেকটা আলাদা আলাদা প্যাকেটের মতো কাজ করে, এবং যখন সবগুলো dependency Optomize হয়ে যায় তখন ওই প্রত্যেক্টা প্যাকেট একটা আলাদা ফাইল হিসাবে প্রসেস হয়।

Loaders
আমরা যদি শুধুমাত্র Webpack এর কথা চিন্তা করি তাহলে এক্তা শুধুমাত্র JS ফাইলই প্রসেস করতে পারে কিন্তু এতে Loader ব্যাবহারের সুবিধা থাকায় Loader অন্যান্য Resourse গুলোকেও Webpack এর মাধ্যমে JS Asset এ রুপান্তর করতে পারে।

Plugin system
Webpack এ প্লাগিন সিস্টেম enabled থাকায় এবং Webpack এর প্রায় সব ধরনের ইন্টারনাল ফিচার প্লাগিন আকারে থাকায় নিজ ইচ্ছা মতো যে কোন ফিচার কাস্টমাইজ করে নেওয়া যায় এমন কি নিজের যে কোন কাস্টমাইজ/নিউ ফিচার open source আকারে অন্যদের সাথে শেয়ারও করা যায় তাতে নিজের ভুলগুলো ধরা পড়ে এবং ফিচারটি আরো ব্যাবহার উপযোগী হয়।

মুল লেখাটি এখানেঃ http://webpack.github.io/docs/what-is-webpack.html

No comments:

Post a Comment