জাভাস্ক্রিপ্ট কি এবং এর কাজ কি? বিস্তারিত জানুন

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

"হ্যালো , ওয়ার্ল্ড!"

তবে এর আগে কম্পিউটার মাউসের রাইট বাটনে ক্লিক করুন একটা popup মেনু আসবে সেখান থেকে inspect element সিলেক্ট করুন । এবং দেখবেন console নামে একটা অপশন আছে। ব্যাস এবার '>' চিহ্ন যদি চোখে পড়ে তাহলে তার পাশে কার্সর রাখুন  আপনি ঠিক জায়গায় আছেন। এবার আপনার কাজ হলো নিচের মতো হুবহু লেখাগুলো console এ টাইপ করুন:

console.log("Hello, World!")

ব্যাস, এইতো আপনার জাভাস্ক্রিপ্ট  এ হাতেখড়ি হয়ে গেল আপনাকে অভিনন্দন আপনি লিখেছেন আপনার জীবনের প্রথম জাভাস্ক্রিপ্ট প্রোগ্রামটি লিখে ফেলেছেন । একটু মনোযোগ সহকারে লক্ষ্য করলে বুঝতে পারবেন console এ আপনার লিখাটি অর্থাৎ Hello, World! প্রিন্ট করেছে একটা বিপরীত অ্যরো চিহের মাধ্যম এ যাকে আমরা বলি প্রোগ্রামের আউটপুট।

 

জাভা স্ক্রিপ্ট কি?

জাভাস্ক্রিপ্ট কে ডেভেলপ করা হয়েছিল ব্রাউজারের মধ্যে রান করার জন্য কিন্তু যাতে ওয়েবসাইটগুলোতে ইন্টারকশন যুক্ত করা যায় । যেমন কোন এনিমেশন তৈরি করা, কোন বাটনে ক্লিক করলে ওয়েবসাইট এর কিছু পরিবর্তন ঘটানো মানে ছোট ছোট কাজ আরকি। আর এ জন্য ডেভেলপার কমিউনিটিতে এটির প্রচলিত ছিল 'টয়' (Toy) ল্যাংগুয়েজ হিসেবে। আর এর মানে আমাদের সবার জানা। প্রোগ্রামাররা এটিকে বেশীরভাগ সময় হাসি ঠাট্টা করত কারণ, এর প্রায়োগিক দিক শুধুমাত্র ব্রাউজারে সীমাবদ্ধ ছিলো। তাই এর ফিউচার নিয়ে তেমন কোন ভালো সম্ভনা দেখা যাচ্ছিল না । এমন সময় নোড জেএস এ গ্র্যান্ড এন্ট্রি যেন জাভাস্ক্রিপ্ট কে নতুন প্রাণ এনে দিয়েছিলো । 

জাভা স্ক্রিপ্ট এর কাজ কি?

এখন কথা হচ্ছে, জাভাস্ক্রিপ্ট কে ডেভেলপ করা হয়েছিল ব্রাউজারের মধ্যে রান করার জন্য কিন্তু যাতে ওয়েবসাইটগুলোতে ইন্টারকশন যুক্ত করা যায় । যেমন কোন এনিমেশন তৈরি করা, কোন বাটনে ক্লিক করলে ওয়েবসাইট এর কিছু পরিবর্তন ঘটানো মানে ছোট ছোট কাজ আরকি। আর এ জন্য ডেভেলপার কমিউনিটিতে এটির প্রচলিত ছিল 'টয়' (Toy) ল্যাংগুয়েজ হিসেবে। আর এর মানে আমাদের সবার জানা। এছাড়া জাভাস্ক্রিপ্ট দিয়ে কিছু ছোট খাটো এপ্লিকেশন ও তৈরি করা যেত যাতে ডেটাবেজ ইন্টারেকশনের প্রয়োজন পড়ত না যেমন একটা টু-ডু যেটা জাভাস্ক্রিপ্ট লোকাল স্টোরেজ ব্যবহার করে তৈরি করা যায়।

জাভা স্ক্রিপ্ট কেন ব্যবহার করা হয়:

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

অর্থাৎ আমরা চাইলে এখানে থেকে একটা সুযোগ নিতে সেটা হলো ক্লায়েন্ট এবং সার্ভার সাইডে একই ল্যাঙ্গুয়েজ ব্যাবহারের সুযোগ। এখন আপনি যদি জেনে না থাকেন ক্লায়েন্ট সাইট কি এবং সার্ভার সাইড বলতে কি বুঝায় তাহলে সহজ কথায় একটি ওয়েবসাইটের ( মানে ওয়েব এপের) যেটুকু অংশ আপনার কম্পিউটার এ দেখতে পান সেটা ক্লায়েন্ট ।

অর্থাৎ আপনার কম্পিউটার একটা ক্লায়েন্ট । আর আপনার ওয়েবসাইটটি যেখান থেকে সার্ভ হচ্ছে সেটা হচ্ছে সার্ভার অর্থাৎ আপনি ফেসবুক ব্যবহার ভিকড়ছেন মানে আপনি একজন ফেসবুক ক্লায়েন্ট আর আপনি কাউকে ফ্রেন্ড রিকোয়েস্ট পাঠাতে সেটার জন্য সার্ভারে একটা রিকোয়েস্ট পাঠিয়েছেন সেটা সার্ভার হ্যন্ডেল করছে আপনার অজান্তেই।

কথা হচ্ছে সার্ভার সাইট কোড দেখা যায় না । কিন্তু, ক্লায়েন্ট সাইডের কোড দেখা যায় । সে যাহোক, মুল কথায় আসি তো রাইয়ান ডাল নানা একজন ব্যাক্তি যখন গুগলক্রমের ভি8(v8)  নিয়ে স্টাডি করল তখন তিনি একটা কাজ করলেন তিনি ক্রমের কোডগুলো (ক্রমের v8 ইঞ্জিন একটি ওপেনসোর্স প্রজেক্ট) নিয়ে তাতে কিছু সি প্লাস প্লাস কোড যুক্ত করে একটা রান টাইম তরি করেন যার নাম দেন নোড জেএস। যেটা ব্রাউজারের বাইরে থেকে জাভাস্ক্রিপ্ট কে রান করার সুযোগ করে দিয়েছিল।

আর ধীরে ধীরে মানুষ পরিবর্তন কে গ্রহণ করা শুরু করল যখন নোড এর প্যাকেজ ম্যানেজার এন পি এম (npm) তৈরি হয় তখন এর জাভাস্ক্রিপ্ট জনপ্রিয়তা বৃদ্ধি পায়। তবে জাভাস্ক্রিপ্ট এর জনপ্রিয়তার কারণ কিছু বিষয় উল্লেখ্য, v8 ইঞ্জিন যা অনেক পাওয়ারফুল এবং ফাস্ট ছিলো । এবং তা নোড জেএস কে অন্যন্য ব্যাকেন্ড  প্রযুক্তির তুলনায় ফাস্ট করে। নোড প্যাকেজ ম্যানেজার থাকায় নোড এর উপর তৈরি যেকোনো প্রজেক্টে যেকেউ যেকোনো কারো কোড সহজ ব্যবহারে করতে পারে (অবশ্যই লাইসেন্স মেনে) । 

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

এছাড়া, Express, Angular(developed by google), electron, vue  ইত্যাদি তো আছেই। আরো চমৎকার ব্যপার হচ্ছে জাভাস্ক্রিপ্ট এর সাথে কাজ করার জন্য আজ mongodb এর মতো অসাধারণ ডেটাবেজ সিস্টেম আছে। যা আমাদের পরিচয় করিয়ে দেয় NoSql এর সাথে। আর যেকারণে জাভাস্ক্রিপ্ট সবচেয়ে বেশি জনপ্রিয় তা হলো ।

সার্ভারে আর ক্লায়েন্ট এ নতুন একই ভাষা ব্যবহার করা যায়  অর্থাৎ সার্ভারের জন্য নতুন কোন ভাষা শেখার প্রয়োজন পড়ে না। এবং যে উক্তি দিয়ে শেষ করব সেটা হলো রাইয়ান ডাল এর মোটিভেশন , " Javascript Is Everywhere "

Enjoyed this article? Stay informed by joining our newsletter!

Comments

You must be logged in to post a comment.

Related Articles