Gulp টাস্ক কম্পোজিশন

Gulp টাস্কগুলিকে গ্রুপে (কম্পোজিশন) একত্রিত করা যেতে পারে, যেখানে টাস্কগুলি ক্রমানুসারে বা সমান্তরালভাবে সম্পাদিত হবে।

চলুন দেখি কিভাবে এটি করা হয়। উদাহরণস্বরূপ নিম্নলিখিত টাস্কগুলি নেওয়া যাক:

javascriptfunction task1(cb) {
  cb();
}
function task2(cb) {
  cb();
}

ক্রমানুসারে সম্পাদন

টাস্কগুলি ক্রমানুসারে সম্পাদন করার জন্য series ফাংশনটি তৈরি করা হয়েছে। এই ফাংশনটি প্যারামিটার হিসেবে যেকোন সংখ্যক টাস্ক নেয় এবং তাদের তালিকাভুক্তির ক্রমে একের পর এক সম্পাদন করে।

প্রথমে এই ফাংশনটি Gulp লাইব্রেরি থেকে ইম্পোর্ট করতে হবে:

javascriptconst { series } = require('gulp');

এখন আমরা এই ফাংশনটি ব্যবহার করতে পারি:

javascriptfunction taskD(cb) {
  series(task1, task2);
  cb();
}

exports.default = taskD;

পাবলিক টাস্কের জন্য অতিরিক্ত ফাংশন তৈরি না করে সরাসরি series-এর কাজের ফলাফল এক্সপোর্ট করা যেতে পারে:

javascriptexports.default = series(task1, task2);
Задание 1

তিনটি টাস্ক তৈরি করুন যা একের পর এক ক্রমানুসারে নির্বাহ হয়।

সমান্তরাল সম্পাদন

টাস্কগুলি সমান্তরালে সম্পাদন করার জন্য একই রকম ফাংশন parallel() তৈরি করা হয়েছে। চলুন এর কাজ দেখি।

প্রথমে এটি সংযোগ করি:

javascriptconst { parallel } = require('gulp');

পাবলিক টাস্কের ভিতরে আমাদের ফাংশনটি ব্যবহার করি:

javascriptfunction taskD(cb) {
  parallel(task1, task2);
  cb();
}

exports.default = taskD;

অথবা শুধু কাজের ফলাফল এক্সপোর্ট করি:

javascriptexports.default = parallel(task1, task2);
Задание 2

তিনটি টাস্ক তৈরি করুন যা সমান্তরালভাবে নির্বাহ হয়।

কম্বিনেশন

series এবং parallel() ফাংশনগুলি একে অপরের মধ্যে যেকোন কম্বিনেশনে নেস্ট করা যেতে পারে, উদাহরণস্বরূপ, এভাবে:

javascriptexports.default = series(task1, parallel(task2, task3));
Задание 3

পাঁচটি টাস্ক তৈরি করুন। এই টাস্কগুলির সাথে কম্বিনেশনের উদাহরণ নিয়ে চিন্তা করুন।