হ্যালো বন্ধুরা, কেমন আছেন? আশাকরি অনেক অনেক ভালো রয়েছেন। বর্তমানে অনেক মানুষ ওয়েব ডেভেলপমেন্ট শিখতে চাচ্ছে। বা আবার অনেকে শিখতেছেও। কিন্তু তাদের অনেকের মনেই প্রশ্ন থাকে জাভাস্ক্রিপ্ট কেন শিখবো? আমি চাইলেতো পিএইচপি শিখতে পারি। বা পাইথন শিখতে পারি। যদিও আমি জাভাস্ক্রিপ্ট শিখি তাহলে আমার কি কি উপকার হবে? বা জাভাস্ক্রিপ্ট দিয়ে আমি কি ধরনের কাজ করতে পারবো? ভবিষ্যতে জাভাস্ক্রিপ্ট এর কি ধরনের চাহিদা থাকবে ইত্যাদি বিষয় নিয়ে আজকে আমরা আলোচনা করবো।
জাভাস্ক্রিপ্ট (Javascript) কি বলতে গেলে বলতে হয় জাভাস্ক্রিপ্ট একটি প্রোগ্রামিং ল্যাঙ্গুয়েজ। জাভাস্ক্রিপ্ট বর্তমানে নাম্বার ওয়ান প্রোগ্রামিং ল্যাঙ্গুয়েজ। আবার অনেকে বলবে পাইথন নাম্বার ওয়ান। আশাকরি তাহলে জাভাস্ক্রিপ্ট নাম্বার ওয়ান প্রোগ্রামিং ল্যাঙ্গুয়েজ।
জাভাস্ক্রিপ্ট (Javascript) কেন শিখবেন এই প্রশ্নের ছোট্ট একটা উত্তর দিই তা হলো জাভাস্ক্রিপ্ট বিশ্বের এক নাম্বার ল্যাঙ্গুয়েজ তাহলে তা কেন শিখবেন না? আপনি যদি যদি একজন ওয়েব ডেভেলপার বা ডিজাইনার হতে চান তাহলে অবশ্যই আপনাকে জাভাস্ক্রিপ্ট শিখতে হবে। আপনি যখন একটা ওয়েব সাইট ডিজাইন তৈরি করবেন তখন অবশ্যই আপনার ওয়েব সাইটে এনিমেশন দিতে হবে। তার জন্য জাভাস্ক্রিপ্ট ব্যবহার করতে হবে। একজন ডিজাইনার হিসেবে আপনাকে জাভাস্ক্রিপ্ট জানতেই হবে কারণ ডিজাইন এর জন্য এর থেকে ভালো বা কোন অপশন নাই। কিন্তু আপনি যদি একজন ডেভেলপার হন তাহলে আপনি চাইলে জাভাস্ক্রিপ্ট শিখতে পারেন আবার চাইলে নাও পারেন। কারণ ডেভেলপমেন্ট এর জন্য আপনার কাছে আরো অপশন রয়েছে।
এবার আসুন জানি জাভাস্ক্রিপ্ট দিয়ে আমরা কি কি করতে পারবো। তার আগে একটু জেনে নিই অন্যকোন প্রোগ্রামিং ল্যাঙ্গুয়েজ দিয়ে কি কি করতে পারবো? আমরা যদি পিএইচপি শিখি তাহলে আমরা ওয়েব ডেভেলপমেন্ট ছাড়া আর কোন কিছু করতে পারবো না। তাও আবার কোন প্রকার সিঙ্গেল ওয়েব সাইট বা ওয়ান পেজ ওয়েব সাইট তৈরি করতে পারবো না। কিন্তু বর্তমানে সবাই চায় ওয়েব সাইটটা যেন সিঙ্গেল পেজ অ্যাপলিকেশন হয়। তাহলে দেখা যাচ্ছে বর্তমানে ক্লাইন্ট চাচ্ছে একটা আর আপনি তাদেরকে দিচ্ছেন অন্যটা তাহলে তো আপনি মার্কেটে বেশিদিন টিকে থাকতে পারবেন না। এবার দেখি জাভাস্ক্রিপ্ট দিয়ে কি কি করতে পারি। নিচে ছোট্ট একটা তালিকা দেওয়া হলো।
অন্যান্য ল্যাঙ্গুয়েজ এর দিকে তাকালে দেখা যায় সেই ল্যাঙ্গুয়েজ শুধু মাত্র একটা বা দুইটা কাজের জন্য ব্যবহৃত হয়ে থাকে। বা তাদের ক্ষমতাই রয়েছে একটা বা দুইটা কাজ করার। কিন্তু জাভাস্ক্রিপ্ট দিয়ে আপনি পাঁচটি কাজ করতে পারবেন। যে কাজ গুলো করার জন্য আগে দেখা যেত চার পাচটি ল্যাঙ্গুয়েজ ব্যবহার করা হতো। সেখানে আপনি শুধুমাত্র একটি ল্যাঙ্গুয়েজ শিখে চার বা পাচটি ল্যাঙ্গুয়েজ এর কাজ করতে পারতেছেন।
ওয়েব সাইট ডিজাইন বলতে বর্তমানে সিঙ্গেল পেজ অ্যাপলিকেশনই বুঝানো হয় তাই এইখানে আর বেশি কিছু বললাম না। নিচে যে বিষয় গুলো নিয়ে আলোচনা করবো সেগুলো শিখলে আপনি ওয়েব সাইট ডিজাইন করতে পারবেন।
সিঙ্গেল পেজ অ্যাপলিকেশন বলতে কি বুঝায়? সিঙ্গেল পেজ অ্যাপলিকেশন বলতে বুঝায় যে ওয়েব সাইট গুলো মোবাইল অ্যাপের মতো কাজ করে। কোন প্রকার ব্রাউজার রিফ্রেস নেয় না। সিঙ্গেল পেজ অ্যাপলিকেশন তৈরি করার জন্য তিনটি জনপ্রিয় লাইব্রেরি বা ফ্রেমওয়ার্ক রয়েছে।
রিয়্যাক্টকে অনেকে লাইব্রেরি বলে থাকে আবার অনেকে ফ্রেমওয়ার্কও বলে থাকে। রিয়্যাক্ট একটি ছোট্ট লাইব্রেরি। এটি ব্যবহার করে আপনি যেকোন ধরনের ছোট অথবা বড় ওয়েব সাইট তৈরি করতে পারবেন। এবং সেই ওয়েব সাইটটি হবে সিঙ্গেল পেজ অ্যাপলিকেশন। রিয়্যাক্ট জেএস দিয়ে আপনি কত বড় ওয়েব সাইট তৈরি করতে পারবেন সেটার আরেকটা উদাহরণ হলো ফেসবুক। ফেসবুক রিয়্যাক্ট দিয়ে তৈরি করা হয়েছে। মূলত ফেসবুক কোম্পানীই রিয়্যাক্ট জেএস লাইব্রেরীটি তৈরি করেছে।
এটি আরো একটি জনপ্রিয় জাভাস্ক্রিপ্ট ফ্রেমওয়াক। যা ফ্রন্ট এন্ড এর জন্য ব্যবহার করা হয়। এটি আমাদেরকে গুগল দিয়ে থাকে। এই ফ্রেমওয়ার্কটি ব্যবহার করেও আপনি অনেক দারুণ দারুণ ওয়েব সাইট তৈরি করতে পারবেন।
এই ফ্রেমওয়ার্কটি বেশির ভাগ লারাভেল এর সাথে ব্যবহার করা হয়। আপনি যদি ভিউ জেএস শিখার জন্য ইউটিউবে সার্চ দেন তাহলে বেশির ভাগ মানুষ আপনাকে ভিউ জেএস লারাভেল এর সাথে ব্যবহার করে শিখাবে।
ওয়েব সাইট ডেভেলপমেন্ট এর জন্য সবচেয়ে জনপ্রিয় হচ্ছে নোড জেএস। আসলে নোড জেএস আসার পর থেকেই জাভাস্ক্রিপ্ট এর এতটা পরিবর্তন হয়েছে। নোড জেএস হচ্ছে জাভাস্ক্রিপ্ট এর রান টাইম। তাই এটি কোন লাইব্রেরি বা ফ্রেমওয়ার্ক না। নোড জেএস ব্যবহার করে আপনি পিএইচপি থেকেও অনেক ভালো ভাবে ওয়েব সাইট ডেভেলপ করতে পারবেন। বর্তমানে বেশিরভাগ মানুষ যাদের আগে থেকে ওয়েব সাইট রয়েছে কিন্তু তা পিএইচপি দিয়ে ডেভেলপ করা তারা বেশির ভাগই তা নোড জেএস দিয়ে করে ফেলতেছে।
কয়েক বছর আগে জাভাস্ক্রিপ্ট দিয়ে ফ্রন্ট এন্ড কিছুৃ কাজ ছাড়া অন্য কোথাও ব্যবহার করা কল্পনাও করা যেত না। কিন্তু এখন জাভাস্ক্রিপ্ট দিয়ে হাই লেভেলের মোবাইল অ্যাপ তৈরি করতে পারবেন। আবার সেই একই অ্যাপ আপনি অ্যান্ড্রয়েড এবং আইফোন দুটোতেই ব্যবহার করতে পারবেন। তার জন্য আপনাকে শিখতে হবে জাভাস্ক্রিপ্ট এর আরেকটা লাইব্রেরি রিয়্যাক্ট নেটিভ। আপনি যদি রিয়্যাক্ট শিখে থাকেন তাহলে আপনার রিয়্যাক্ট নেটিভ শিখতে বেশি সময় লাগবে না। কারণ রিয়্যাক্ট এবং রিয়্যাক্ট নেটিভ প্রায় একই সামান্য কিছু পরিবর্তন রয়েছে।
জাভাস্ক্রিপ্ট দিয়ে ডেস্কটপ সফটওয়্যার তৈরি করবো তা ভাবা যায়? হুমম বর্তমান সময়ে ভাবা যায়। কারণ জাভাস্ক্রিপ্ট এখন একটি হাই লেভেল ল্যাঙ্গুয়েজ। যার মাধ্যমে এখন মাল্টিপল কাজ করা যায়। আপনি জাভাস্ক্রিপ্ট দিয়ে ডেস্কটপ সফটওয়্যার তৈরি করতে চান তাহলে আপনাকে ইলেক্ট্রন ফ্রেমওয়ার্কটি শিখতে হবে। এবং এই ফ্রেমওয়ার্ক এর মাধ্যমে আপনি যদি কোন সফটওয়্যার তৈরি করেন তাহলে তাহ ক্রোস প্লাটফর্ম এ ব্যবহার করতে পারবেন। অর্থাত উইন্ডোজ ম্যাক লিনাক্স সব জায়গায় ব্যবহার করতে পারবেন।
ভবিষ্যতে জাভাস্ক্রিপ্ট এর চাহিদা আমার মতে অনেক ভালো থাকবে। কারণ এখনোও এমন কোন ল্যাঙ্গুয়েজ নাই যেটা একই সাথে এত সুবিধা দিচ্ছে। বা এত কাজে ব্যবহার হচ্ছে। একটা ল্যাঙ্গুয়েজকে পিছনে ফেলে অন্য কোন ল্যাঙ্গুয়েজ এগিয়ে যাবে এটি মূখের কথা না। তার জন্য অনেক সময় লাগবে। তাই আপনি নিশ্চিন্তে জাভাস্ক্রিপ্ট শিখতে পারেন।
এখন আপনারা যদি জাভাস্ক্রিপ্ট কোথা থেকে শিখবেন তা চিন্তা করেন তাহলে আমার প্রোফাইলে যান। সেখানে গেলে ওয়েব ডেভেলপমেন্ট এর গাইডলাইন নিয়ে একটি টিউন রয়েছে সেটি পড়তে পারেন। তাহলে বিস্তারিত ভাবে জানতে পারবেন জাভাস্ক্রিপ্ট কোথা থেকে শিখবেন। তো আজকের জন্য এই পর্যন্ত আল্লাহ হাফেজ।
আমি রাশেদুল ইসলাম। টিউনার, সেনবাগ রেসিডেন্সিয়াল দাখিল মাদ্রাসা, নোয়াখালী। বিশ্বের সর্ববৃহৎ বিজ্ঞান ও প্রযুক্তির সৌশল নেটওয়ার্ক - টেকটিউনস এ আমি 4 বছর 7 মাস যাবৎ যুক্ত আছি। টেকটিউনস আমি এ পর্যন্ত 62 টি টিউন ও 61 টি টিউমেন্ট করেছি। টেকটিউনসে আমার 16 ফলোয়ার আছে এবং আমি টেকটিউনসে 0 টিউনারকে ফলো করি।