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

বাংলা ব্লগপ্রোগ্রামিং৩ জুলাই, ২০২১

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

গত কয়েকবছরধরে ওয়েব ডেভেলপমেন্ট সেক্টরে একটা ভবিষ্যৎবানী অনেক বেশী প্রচারিত, সেটা হলো জাভাস্ক্রিপ্ট ইজ ফিউচার। একসময় এই জাভাস্ক্রিপ্টকে প্রোগ্রামিং ল্যাঙ্গুয়েজ হিসেবেই অনেকে স্বীকৃতি দিতে চাইতো না, সেই জাভাস্ক্রিপ্ট কিভাবে ভবিষ্যৎ প্রজন্মের জনপ্রিয় প্রোগ্রামিং ল্যাঙ্গুয়েজ হয়?

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

ক্লায়েন্ট-সাইডে স্ক্রিপ্টিং ল্যাঙ্গুয়েজ হিসেবে জাভাস্ক্রিপ্টঃ

ফ্রন্ট-এন্ডে স্ক্রিপ্টিং ল্যাঙ্গুয়েজ হিসেবে জাভাস্ক্রিপ্ট যে সবচেয়ে জনপ্রিয় সেটা কারো অজানা থাকার কথা না। ফ্রন্ট-এন্ডে এইচটিএমএল এবং সিএসএস এর পাশাপাশি জাভাস্ক্রিপ্ট অত্যন্ত গুরুত্বপুর্ন অংশ। সিএসএস৩ এর আগ পর্যন্ত জাভাস্ক্রিপ্ট ছিলো এনিমেশনের জন্য মোস্ট এফিশিয়েন্ট মাধ্যম। তাছাড়া ওয়েবের ডাইনামিক ফাংশনালিটিসগুলি, ড্রপডাউন, অটো-কমপ্লিট, স্লাইডশো, ফর্ম ভ্যালিডেশন, এজাক্স, ইত্যাদি জাভাস্ক্রিপ্ট ছাড়া মোটামুটি অসম্ভবই বলা যায়। ফ্রন্ট-এন্ডে জাভাস্ক্রিপ্ট এতোটাই জনপ্রিয় যে বর্তমানে ৯৯% ওয়েবসাইটে জাভাস্ক্রিপ্টের ব্যবহার রয়েছে।

সার্ভার-সাইডে জাভাস্ক্রিপ্টঃ

২০০৯ এ নোড.জেএস রিলিজের পর জাভাস্ক্রিপ্ট কনসেপ্টটাই চেঞ্জ হয়ে গেছে। জাভাস্ক্রিপ্ট আর ক্লায়েন্টসাইডে সীমাবদ্ধ থাকলো না। নোডজেএস এর মাধ্যমে জাভাস্ক্রিপ্ট সার্ভার-সাইডে খেল দেখানো শুরু করলো। আর দারুণ কিছু ফ্রেমওয়ার্ক, এক্সপ্রেসজেএস, এম্বারজেএস নেক্সটজেএস, মিটিওরজেএস, ইত্যাদি জাভাস্ক্রিপ্টকে ফুলস্ট্যাক ডেভেলপারদের কাছে করে তুলেছে তুমুল জনপ্রিয়। সেম ল্যাঙ্গুয়েজে ফ্রন্ট-এন্ড এবং ব্যাক-এন্ড দুইটাই ডেভেলপ করা যাচ্ছে, এটা অনেক বড় একটা সুবিধা।

তাছাড়া গুগলের ভি৮ ইঞ্জিন আর ES6 স্ট্যান্ডার্ড এর কারনে অন্যান্য ব্যাকএন্ড ল্যাগুয়েজগুলির সাথে কম্পেয়ার করলে জাভাস্ক্রিপ্ট কয়েকগুণ দ্রুতগতিতে কাজ করে। গতি, স্ক্যালাবিলিটি, সার্ভার রিসোর্স অপটিমাইজেশন, সব মিলিয়ে জাভাস্ক্রিপ্ট অলরেডি অন্যান্য প্রোগ্রামিং ল্যাঙ্গুয়েজের থেকে এগিয়ে আছে।

ক্রস-প্ল্যাটফর্ম প্রোগ্রামিং ল্যাঙ্গুয়েজঃ

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

Atwood’s Law:
Any application that can be written in JavaScript, will eventually be written in JavaScript.

– Jeff Atwood

মডার্ন জাভাস্ক্রিপ্ট এর ইউজ কেস সম্পর্কে আরো জানতে পড়তে পারেন এই পোস্টটিঃ মডার্ন জাভাস্ক্রিপ্ট দিয়ে কি কি করা যায়?

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

পৃথিবীর সবচেয়ে বড় প্লাগিন/প্যাকেজ লাইব্রেরী কিন্তু জাভাস্ক্রিপ্টের দখলেই। NPM (জাভাস্কিপ্টের প্যাকেজ ম্যানেজার) এ রয়েছে প্রায় দেড় মিলিওনের মতো প্যাকেজ বা প্লাগিন যা সকলের জন্য উন্মুক্ত।

জাভাস্ক্রিপ্ট এর ভবিষ্যৎঃ

বড় বড় টেক কোম্পানিগুলো অলরেডি জাভাস্ক্রিপ্ট এডপ্ট করে নিয়েছে। সুতরাং বলা ই যায় যে জাভাস্ক্রিপ্টের ভবিষ্যৎ পুরাই “ফকফকা”, হাহা। এটলিস্ট আগামী দশক যে জাভাস্ক্রিপ্ট রাজ করবে এটা না মানার কোন কারন নেই।

ফ্রন্ট-এন্ড সম্পুর্ন জাভাস্ক্রিপ্টের দখলে, ব্যাকএন্ড দখলের জার্নি শুরু হয়ে গেছে। যেই হারে নিত্যনতুন জাভাস্ক্রিপ্ট বেজড ফ্রেমওয়ার্ক আসছে, ব্যাকেন্ড দখল হতেও খুব বেশী দেরি নেই।

গুগলের TensorFlow এর মাধ্যমে মেশিন লার্নিং এ জাভাস্ক্রিপ্ট ভাল উন্নতি করছে, এবং আশা করা যায় মেশিন লার্নিংও জাভাস্ক্রিপ্ট এর দখলে চলে আসতে পারে।

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

উপসংহারঃ

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

এই টপিকের আরও কিছু পোস্টঃ

© সোলায়মান হায়দার