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

জাভাস্ক্রিপ্ট একটি ওপেন সোর্স স্ক্রিপটিং ল্যাঙ্গুয়েজ । এটির দ্বারা যেকোন ওয়েবসাইট বা ওয়েবপেজকে জীবন্ত করা যায় । অর্থাৎ এটির দ্বারা ডাইনামিক ওয়েবসাইট তৈরি করা হয় । এটিকে অনেক সময় ব্রাউজার সাইট ল্যাঙ্গুয়েজ ও বলা হয় । কারন এই ল্যাঙ্গুয়েজটি শুধুমাত্র ব্রাউজারেতে কাজ হয় বিভিন্ন ইভেন্টে এর সঙ্গে । জাভাস্ক্রিপ্টকে এন্টারপ্রিটেড ল্যাঙ্গুয়েজ বলা হয় । কারন এটি ল্যাঙ্গুয়েজ হওয়া স্বতেও রান হওয়ার জন্য কোন কম্পাইলেশনের প্রয়োজন হয় না । এই ল্যাঙ্গুয়েজ এর আবির্ভাব সি , সি ++ ও জাভা থেকে । সি , সি ++ ও জাভা এর সঙ্গে জাভাস্ক্রিপ্ট এর অনেক মিল থাকলেও এটি কিন্তু সম্পূর্ণ কোন ল্যাঙ্গুয়েজ নয় ।
ওয়েব সাইট দুই প্রকার স্ট্যাটিক ও ডাইনামিক ।
স্ট্যাটিক : এই ওয়েব সাইটএর ডাটা বা কনটেন্ট গুলো স্থির থাকে কোন পরিবর্তন হয় না ।
ডাইনামিক : এই ওয়েব সাইটএর ডাটা বা কনটেন্ট গুলো সর্বদা পরিবর্তন হয় । যেমন ফেসবুক ওয়েবসাইট টি আমি খুলাম একরকম দেখতে পাবো আবার আপনি যদি খোলেন আর এক রকম দেখতে পাবেন । এই ডাইনামিক ওয়েবসাইট তৈরি করার ভূমিকা জাভাস্ক্রিপ্ট এর ।
আবির্ভাব :
এটি তৈরি করেছেন Brendon Eich নামে এক ব্যক্তি । তিনি নেটস্কেপ কমুনিকেশান কর্পোরেশন এর প্রোগ্রামার ছিলেন । এটির তৈরি হয় ১৯৯৫ সালে তখন এর নাম হয় Live script। পরে নাম পরিবর্তিত হয় জাভাস্ক্রিপ্টে ।
জাভা এবং জাভাস্ক্রিপ্ট কি একই ল্যাঙ্গুয়েজ :
সম্পূর্ণ ভুল ধরনা । জাভা হল একটি জটিল প্রোগ্রামিং ল্যাঙ্গুয়েজ এটির দ্বারা কোন ওয়েব আপ্লিকেশন তৈরি করা যায় না । অপর দিকে জাভাস্ক্রিপ্ট একটি সহজ স্কিপ্টিং প্রোগ্রামিং ল্যাঙ্গুয়েজ । এটির দ্বারা ওয়েব অ্যাপ্লিকেশান তৈরি করা সম্ভব । জাভা কে রান করার জন্য কম্পাইলারের প্রয়োজন হয় । অপর দিকে জাভাস্ক্রিপ্ট HTML কোডের মধ্যে লেখা হয় । ব্রাউজারে সহজে রান করা যায় ।
জাভাস্ক্রিপ্ট দ্বারা যা করা যায় :
এই স্কিপ্টিং ল্যাঙ্গুয়েজটি শিখে আমরা web Development( ওয়েব ডেভেলপমেন্ট ), Desktop App Development ( ডেক্সটপ অ্যাপ ডেভেলপমেন্ট ), Mobile App Development ( মোবাইল অ্যাপ ডেভেলপমেন্ট ) করতে পারি ।
ওয়েব ওয়েব ডেভেলপমেন্ট এর ক্ষেত্রে :
- ওয়েব পেজে ঘড়ি তৈরি করতে পারেন ।
- ওয়েব পেজে ম্যাপ লাগাতে পারেন ।
- পোপ আপ (pop up) উইন্ডো তৈরি করতে পারেন ।
- অডিও এবং ভিডিও প্লেয়ার তৈরি করতে পারেন ।
- সময়ের সঙ্গে এইচটিএমএল ডিজাইন পরিবর্তন করতে পারেন ।
- গেম তৈরি করতে পারেন ।
- ফর্ম ভেলিডেশন কাজ করতে পারেন ।
- ডাইনামিক ড্রপ ডাউন মেনু নিয়ে কাজ করতে পারেন ।
- অ্যালাট মেসেজ রাখতে পারেন ওয়েব পেজে ।
- আরও অনেক কিছু ।
লাইব্রেরী ও ফ্রেমওয়ার্ক :
জাভাস্ক্রিপ্ট এর কোডকে সংক্ষেপে লেখার জন্য আমরা বিভিন্ন লাইব্রেরী বা ফ্রেমওয়ার্ক ব্যবহার করতে পারি । এর ফলে রান টাইম ও কোড লেখার সময় ও বাঁচে । যেমন সিএসএস (css) এর ফ্রেমওয়ার্ক Bootstrap ।
- ওয়েব ডেভেলপমেন্ট :
- JQuery
- Angular JS
- React JS
- Vue Js
- Node Js - এটি সার্ভার সাইট স্কিপ্টিং ল্যাঙ্গুয়েজ এর ক্ষেত্রে ও কাজ করে ।
- ডেক্সটপ অ্যাপ ডেভেলপমেন্ট :
- Electron JS - এটি তৈরি হয়েছে Angular Js ও Node Js উভয়ের মাধ্যমে ।
- মোবাইল অ্যাপ ডেভেলপমেন্ট :
- Angular Js
- React Js
- Vue Js
- React Native
- Node Js
নোট : Js এর অর্থ জাভাস্ক্রিপ্ট ।
কিভাবে কাজ করে :
জাভাস্ক্রিপ্ট মূলত ব্রাউজারে বিভিন্ন ইভেন্ট দ্বারা পরিচালিত হয় । যেমন :
- ক্লিক - যখন কোন ইউজার কোন বাটন বা অবজেক্টের উপরে ক্লিক করতে তখন জাভাস্ক্রিপ্ট কাজ করবে ।
- ডাবল ক্লিক - ইউজার যখন কোন বাটন বা অবজেক্টের উপরে ডাবল ক্লিক করবে ।
- রাইট ক্লিক - যখন ওয়েব পেজে রাইট ক্লিক করবে তখন কাজ শুরু হবে ।
- লোড - ওয়েব পেজটি যখন ব্রাউজারে লোড হবে তখন কাজ করবে ।
- আনলোড - যখন ওয়েব পেজ থেকে ইউজার বেরিয়ে যাবে তখন কাজ করানো যাবে ।
- স্ক্রল - ওয়েব পেজ স্ক্রল করলে কাজ করবে ।
- মাউস হভার - কোন ছবি বা অবজেক্টের উপরে যখন মাউস রাখা হবে তখন ও জাভাস্ক্রিপ্টকে কাজ করাতে পারি ।
- উইন্ডো রিসাইজ - ব্রাউজারের এর উইন্ডো যখন রিসাইজ করে ছোট বা বড় করা হবে তখন ও কাজ করানো যায় ।
- কীবোর্ড কী প্রেস - কোন কারনে ইউজার কীবোর্ড থেকে যখন কোন কী প্রেস করবে তখন ও জাভাস্কিপ্ট কাজ করতে পারে ।
শেখার জন্য কি কি জানা দরকার :
এইচটিএমএল ও সিএসএস এর ভালো ধারনা থাকতে হবে ।
কি কি প্রয়োজন :
ব্রাউজার ও যেকোন একটি টেক্সট এডিটর যেমন - নোটপ্যাড বা নোটপ্যাড ++ ।
এক্সটেনশান নাম :
.js

Sandipan Kr Bag
I'm a dedicated full-stack developer, entrepreneur, and the proud owner of ocec.org.in , hailing from the vibrant country of India. My passion lies in creating informative tutorials and sharing valuable tips that empower fellow artisans in their journey. With a deep-rooted love for technology, I've been an ardent enthusiast of PHP, Laravel, Angular, Vue, Node, JavaScript, jQuery, Codeigniter, and Bootstrap from their earliest days. My philosophy revolves around the values of hard work and unwavering consistency, driving me to continuously explore, create, and share my knowledge with the tech community.
* Hire MeRelated Posts

জাভাস্ক্রিপ্ট লেখার পদ্ধতি
Step-by-Step Guide a Dynamic Image Slider with HTML, CSS, and JavaScript
Make a Secure Laravel Login System for Admins and Users: A Step-by-Step Guide
Search
Latest Posts
Using AOS (Animate On Scroll) in React with Tailwind CSS
3 months ago

WebkitSpeechRecognition API
4 months ago

GitHub Understanding Common Prefixes in Conventional Commits
4 months ago
Subscribe to Our Newsletter
Get the latest updates straight to your inbox.