এই অধ্যায়ে শিখবো JavaScript Modules কী, কেন দরকার, এবং কীভাবে ES6 মডিউল ব্যবহার করে কোডকে পরিষ্কার ও মডুলার করা যায়।
১. Modules কী?
-
মডিউল হলো ছোট ছোট কোড ব্লক বা ফাইল যা আলাদা আলাদা কাজ করে।
-
মডিউলগুলোকে একত্র করে বড় প্রোজেক্ট তৈরি করা হয়।
-
এতে কোড পুনঃব্যবহারযোগ্য এবং সহজে রক্ষণাবেক্ষণযোগ্য হয়।
২. পুরানো JS ফাইল ব্যবস্থাপনা
-
সব কোড এক ফাইলে বা
<script>ট্যাগে লেখা হতো। -
বড় প্রোজেক্টে কোড জটিল ও বোজারো হয়ে যেত।
৩. ES6 Modules কি?
-
ES6 থেকে JS এ মডিউল সাপোর্ট এসেছে।
-
দুই কমান্ড ব্যবহৃত হয়:
-
export(কোনো ফাংশন, ভেরিয়েবল, ক্লাস বাইরে পাঠাতে) -
import(অন্য মডিউল থেকে কোড আনার জন্য)
-
৪. Export করা
Named Export
// math.js ফাইল
export function add(a, b) {
return a + b;
}
export const pi = 3.1416;
৫. Import করা
// main.js ফাইল
import { add, pi } from './math.js';
console.log(add(5, 3)); // 8
console.log(pi); // 3.1416
৬. Default Export
-
একটি মডিউলে একবারে শুধু একটি ডিফল্ট export থাকতে পারে।
-
Import করার সময়
{}ব্যবহার হয় না।
// greet.js
export default function greet(name) {
return `হ্যালো, ${name}!`;
}
// main.js
import greet from './greet.js';
console.log(greet('রাকিব')); // হ্যালো, রাকিব!
৭. Import Alias (নামের পরিবর্তন)
import { add as sum } from './math.js';
console.log(sum(2, 3)); // 5
৮. Module ব্যবহার করার নিয়ম
-
ব্রাউজারে
<script type="module">ব্যবহার করতে হয়:
<script type="module" src="main.js"></script>
-
মডিউল ফাইলগুলো অবশ্যই সার্ভার থেকে লোড করতে হয় (লোকাল ফাইল সরাসরি ওপেন করলে সমস্যা হতে পারে)।
৯. উদাহরণ: দুই ফাইলে কোড ভাগ করা
math.js:
export function multiply(a, b) {
return a * b;
}
app.js:
import { multiply } from './math.js';
console.log(multiply(4, 5)); // 20
১০. কেন মডিউল ব্যবহার করবেন?
-
কোড সংগঠিত ও পরিষ্কার থাকে
-
সহজে রিইউজেবল কোড তৈরি হয়
-
নামের সংঘর্ষ কমে যায়
-
বড় প্রোজেক্টে কাজ সহজ হয়
এই অধ্যায়ের শেষে আপনি শিখলেন:
-
JavaScript মডিউল সিস্টেম কি
-
export ও import এর ব্যবহার
-
Named এবং Default Export এর পার্থক্য
-
মডিউল ব্যবহারের নিয়ম ও সুবিধা
পরবর্তী অধ্যায়:
অধ্যায় ৩১: JavaScript Error Handling ও Debugging
লিখুন: “অধ্যায় ৩১ শুরু করো” — তাহলে শিখবো ত্রুটি ধরার কৌশল ও ডিবাগিং পদ্ধতি।
