Lesson পড়তে ৫ মিনিট লাগবে

জাভাস্ক্রিপ্ট (JavaScript) কেন শিখবেন?

ওয়েবের নিজস্ব ভাষা — যা পৃথিবীর প্রতিটি ব্রাউজারেই চলে

যে ভাষা পুরো বিশ্ব গ্রাস করেছে

১৯৯৫ সালে ওয়েব ব্রাউজারগুলোর জন্য দ্রুত একটি স্ক্রিপ্টিং ভাষা হিসেবে জাভাস্ক্রিপ্ট (JavaScript) তৈরি করা হয়েছিল মাত্র ১০ দিনে। তিন দশক পর আজ এটি ব্রাউজার আছে এমন প্রতিটি ডিভাইসে চলে — যার মানে হলো প্রায় প্রতিটি ডিভাইসেই। আপনার ফোন, আপনার ল্যাপটপ, স্মার্ট টিভি, এমনকি স্ক্রিন থাকলে আপনার ফ্রিজেও এটি চলবে।

সবচেয়ে অবাক করা ব্যাপার হলো: জাভাস্ক্রিপ্ট হলো একমাত্র ভাষা যা ওয়েব ব্রাউজারগুলোতে স্বয়ংক্রিয় বা নেটিভভাবে (natively) চলতে পারে। আপনি যদি কোনো ওয়েবসাইটকে ইন্টারঅ্যাকটিভ (interactive) করতে চান — যেমন ড্রপডাউন, অ্যানিমেশন, ফর্ম ভ্যালিডেশন, রিয়েল-টাইম আপডেট — তবে আপনার জাভাস্ক্রিপ্ট লাগবেই। এর কোনো বিকল্প নেই। আর শুধু এই একটি কারণেই এটি সর্বকালের অন্যতম গুরুত্বপূর্ণ ভাষা হিসেবে বিবেচিত।

ফ্রন্টএন্ড, ব্যাকএন্ড — সবখানে

পুরোনো দিনে জাভাস্ক্রিপ্ট কেবল ব্রাউজারের মধ্যেই আটকে ছিল। এরপর ২০০৯ সালে নোড জেএস (Node.js) এসে একে মুক্ত করে। এখন আপনি জাভাস্ক্রিপ্ট ব্যবহার করে এসব তৈরি করতে পারবেন:

  • ফ্রন্টএন্ড — রিঅ্যাক্ট (React), ভিউ (Vue), অ্যাঙ্গুলার (Angular), স্ভেল্টে (Svelte)। বর্তমানে আপনার ব্যবহৃত প্রতিটি আধুনিক ওয়েব অ্যাপ কোনো না কোনো জেএস (JS) ফ্রেমওয়ার্ক দিয়ে তৈরি।
  • ব্যাকএন্ড — নোড জেএস (Node.js), এক্সপ্রেস (Express), ফাস্টিফাই (Fastify)। এপিআই (API) তৈরি, ডেটাবেস পরিচালনা, পেমেন্টের প্রসেসিং — সবকিছুই এটি দিয়ে করা যায়।
  • মোবাইল অ্যাপস — রিঅ্যাক্ট নেটিভ (React Native) দিয়ে আপনি মাত্র একটি জাভাস্ক্রিপ্ট কোডবেস ব্যবহার করে আইওএস (iOS) এবং অ্যান্ড্রয়েড অ্যাপ বানাতে পারবেন।
  • ডেস্কটপ অ্যাপস — ইলেক্ট্রন (Electron) নামক ফ্রেমওয়ার্ক ভিজ্যুয়াল স্টুডিও কোড (VS Code), ডিসকর্ড (Discord), স্ল্যাক (Slack), এবং ফিগমা (Figma) চালায়। হ্যাঁ, এগুলো সবই জাভাস্ক্রিপ্টের তৈরি।
  • গেম ডেভেলপমেন্ট — ২ডি (2D) এবং ৩ডি (3D) ব্রাউজার গেমের জন্য ফ্রেজার (Phaser), থ্রি জেএস (Three.js), ব্যাবিলন জেএস (Babylon.js)।
  • এআই (AI) এবং এমএল (ML) — টেনসরফ্লো জেএস (TensorFlow.js) ব্রাউজারেই সরাসরি মেশিন লার্নিং মডেল রান করতে পারে।

একটাই ভাষা, কিন্তু ব্যবহার প্রতিটি প্ল্যাটফর্মে। এটিই হলো জাভাস্ক্রিপ্টের সবচেয়ে বড় সুপারপাওয়ার বা জাদুকরী শক্তি।

শূন্য থেকে চোখের পলকে ইন্টারঅ্যাকটিভ

// কোনো ওয়েবপেজকে ক্লিকে রেসপন্স করানোর জন্য আপনার ঠিক এইটুকু কোডই লাগবে
const button = document.querySelector("button");
button.addEventListener("click", () => {
alert("আপনি বাটনে ক্লিক করেছেন!");
console.log("বাটনটি ক্লিক করা হয়েছে:", new Date().toLocaleTimeString());
});
Output
বাটনটি ক্লিক করা হয়েছে: 2:47:33 PM

আপনি তাৎক্ষণিক ফলাফল দেখতে পাবেন

বেশিরভাগ ভাষায় আপনার প্রথম আউটপুটটি দেখার জন্য একটি কম্পাইলার, একটি টার্মিনাল এবং আনুষঙ্গিক নানা সেটআপের প্রয়োজন হয়। কিন্তু জাভাস্ক্রিপ্ট? আপনার ব্রাউজারটি ওপেন করুন, F12 চাপুন এবং কোড টাইপ করা শুরু করুন। ব্রাউজারটিই এখানকার খেলার মাঠ।

এই তাৎক্ষণিক ফিডব্যাক পাওয়ার বিষয়টি নতুনদের জন্য জাভাস্ক্রিপ্টকে বেশ আকর্ষণীয় করে তোলে। আপনি কোড লিখছেন, আর একটি ওয়েবপেজে তার প্রভাব সাথে সাথেই দেখতে পাচ্ছেন। কোনো সফটওয়্যার ইন্সটল নেই, কোনো কম্পাইলার নেই, কোনো অপেক্ষা নেই। কেবল আপনি এবং আপনার ব্রাউজার।

মাত্র ৩ লাইনে এপিআই (API) থেকে ডেটা আনুন

// একটি পাবলিক API থেকে দৈবচয়ন বা র‍্যান্ডম ভিত্তিতে একটি কুকুরের ছবি আনুন
const response = await fetch("https://dog.ceo/api/breeds/image/random");
const data = await response.json();
console.log("র‍্যান্ডম কুকুর:", data.message);
Output
র‍্যান্ডম কুকুর: https://images.dog.ceo/breeds/labrador/n02099712_4323.jpg

এর ইকোসিস্টেমের কোনো তুলনা হয় না

এনপিএম (npm - Node Package Manager) হলো বিশ্বের বৃহত্তম সফটওয়্যার রেজিস্ট্রি — যেখানে ২০ লক্ষেরও (২ মিলিয়ন) বেশি প্যাকেজ রয়েছে। ইমেইল পাঠাতে চান? এর প্যাকেজ আছে। সিএসভি (CSV) ফাইল পার্স করতে চান? প্যাকেজ আছে। প্রমাণীকরণ বা অথেনটিকেশনের (authentication) পুরো সিস্টেম তৈরি করতে চান? প্যাকেজ আছে। জাভাস্ক্রিপ্টের ইকোসিস্টেম খুব দ্রুত এগোয়, আর আপনার প্রয়োজনীয় প্রতিটি কাজের জন্যই এখানে টুল বা সরঞ্জাম রয়েছে।

জেএস (JS) দুনিয়ার প্রধান ফ্রেমওয়ার্কগুলো হলো:

  • রিঅ্যাক্ট (React) — মেটা (Meta) তৈরি এটি সব জায়গায় ব্যবহৃত হয়। এটি পৃথিবীর সবচেয়ে জনপ্রিয় ইউআই (UI) লাইব্রেরি।
  • নেক্সট জেএস (Next.js) — সার্ভার-সাইড রেন্ডারিং সুবিধা থাকা একটি ফুল-স্ট্যাক রিঅ্যাক্ট ফ্রেমওয়ার্ক।
  • ভিউ (Vue) — ব্যবহারযোগ্য অন্যতম সেরা বিকল্প। এটি এর গঠনগত সারল্যের কারণে বেশ জনপ্রিয়।
  • স্ভেল্টে (Svelte) — বাজারে আসা নতুন প্রতিযোগী। এটি অভাবনীয় গতির জন্য পুরো ফ্রেমওয়ার্কটিকেই কম্পাইল করে ফেলে।
  • এক্সপ্রেস (Express) — খুব ছিমছাম একটি ব্যাকএন্ড ফ্রেমওয়ার্ক যা নোড.জেএস (Node.js) বিপ্লবের সূচনা করেছিল।
Note: জাভাস্ক্রিপ্টের কিছু অদ্ভুত দিক রয়েছে — যেমন typeof null === 'object', 0.1 + 0.2 !== 0.3, এবং [] + [] === ''। এগুলো আসলেই সত্যি। মাত্র ১০ দিনে তৈরি হওয়ার কারণে এটি ওই ঐতিহাসিক ত্রুটিগুলোর মাশুল গুনছে। কিন্তু মডার্ন জাভাস্ক্রিপ্ট (ES6+) আগের চেয়ে উল্লেখযোগ্যভাবে পরিষ্কার ও উন্নত হয়েছে। আর টাইপস্ক্রিপ্টের (TypeScript) মতো টুলগুলো এর ওপর টাইপের নিরাপত্তা বাড়িয়ে তোলে। তাই এসব মিমে (meme) কান দিয়ে ভয় পাবেন না — ভাষাটি এখন আগের চেয়ে অনেক বেশি শক্তিশালী এবং অনেক সুন্দরভাবে গোছানো।

জব বা চাকরির বাজার ব্যাপক

স্ট্যাক ওভারফ্লো ডেভেলপার সার্ভে (Stack Overflow Developer Survey) অনুযায়ী, জাভাস্ক্রিপ্ট বছরের পর বছর ধরে বিশ্বের সবচেয়ে বেশি ব্যবহৃত প্রোগ্রামিং ভাষা হিসেবে জায়গা ধরে রেখেছে। এর চাকরির বাজার থেকেই সেই প্রমাণ পাওয়া যায়:

  • ফ্রন্টএন্ড ডেভেলপার — সবচেয়ে সাধারণ এন্ট্রি-লেভেলের জব। আর রিঅ্যাক্ট + জেএস (React + JS) এক্ষেত্রে একটি স্ট্যান্ডার্ড বা মানদণ্ড।
  • ফুল-স্ট্যাক ডেভেলপার — ফ্রন্টএন্ড এবং ব্যাকএন্ড দুটো তেই জাভাস্ক্রিপ্ট। একটাই ভাষা, অথচ নিয়ন্ত্রণ পুরোটার ওপর।
  • মোবাইল ডেভেলপার — রিঅ্যাক্ট নেটিভ স্টুডিওগুলোর প্রচুর জেএস (JS) ডেভেলপার প্রয়োজন হয়।
  • ডেভটুলস ও ইনফ্রাস্ট্রাকচার (DevTools & Infrastructure) — বিল্ড টুলস, সিআই/সিডি (CI/CD), টেস্টিং ফ্রেমওয়ার্ক — এসবই জেএস-এর আওতাভুক্ত।

আপনি যদি জাভাস্ক্রিপ্ট ভালোভাবে শিখে নিতে পারেন, তবে চাকরি খোঁজার ক্ষেত্রে আপনাকে কখনোই ভাবতে হবে না।

কারা জাভাস্ক্রিপ্ট ব্যবহার করে?

  • গুগল — জিমেইল (Gmail), গুগল ম্যাপস, গুগল ডক্স — এগুলোতে প্রচুর পরিমাণে জাভাস্ক্রিপ্ট ব্যবহৃত হয়।
  • মেটা — এরা রিঅ্যাক্ট (React) তৈরি করেছে। ফেসবুক, ইনস্টাগ্রামের ওয়েব অ্যাপ, হোয়াটসঅ্যাপ ওয়েব — সবই জেএস-এ চলে।
  • নেটফ্লিক্স — তাদের সম্পূর্ণ ফ্রন্টএন্ড এবং ব্যাকএন্ডের কিছু অংশ নোড জেএস-এ (Node.js) চলে।
  • মাইক্রোসফট — ভিএস কোড (VS Code), টিমস (Teams) এবং অ্যাজিউর পোর্টাল (Azure Portal) জাভাস্ক্রিপ্ট/টাইপস্ক্রিপ্ট ব্যবহার করে তৈরি করা হয়েছে।
  • এয়ারবিএনবি (Airbnb) — এর ফ্রন্টএন্ড এবং সার্ভার-রেন্ডার করা পেজগুলো রিঅ্যাক্ট (React)-এ তৈরি।
  • উবার (Uber) — এর রিয়েল-টাইম ড্যাশবোর্ড এবং ড্রাইভার অ্যাপের নানা অংশে জেএস ব্যবহৃত হয়।

ছোট কুইজ

অন্যান্য প্রোগ্রামিং ভাষার তুলনায় কোন জিনিসটি জাভাস্ক্রিপ্টকে স্বতন্ত্র করে তোলে?

পড়া চালিয়ে যান

Variables & Data Types