Ruby programming Language

রবিবার, ২ মে ২০২১, বিকাল ৫:৪৯ সময়

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

Techdiary: রূবি প্রোগ্রামিং
রূবি প্রোগ্রামিং

রুবি ওয়েব অ্যাপ্লিকেশন তৈরি করার জন্য খুবই অল্প সময়ে অনেক বেশি জনপ্রিয় হয়ে ওঠে। রুবি অনেক মানুষের নজর কেড়েছে এর ‘রুবি ওন রেইলস’ ফ্রেমওয়ার্ক এর জন্য। ‘রুবি ওন রেইলস’ ফ্রেমওয়ার্ক ব্যবহার করে দারুন ভাবে রুবি ল্যাঙ্গুয়েজের নানারকম লাইব্রেরী ব্যবহার করে অসাধারণভাবে নানান রকমের ওয়েব অ্যাপ্লিকেশন তৈরি করা যায়। রুবি ল্যাংগুয়েজ নির্ভর এই ফ্রেমওয়ার্কটি তৈরি করেছিলেন ডেভিড হেনেমিয়ার হ্যান্সন নামের আরেক প্রোগ্রামার। রুবি ল্যাংগুয়েজটি অনেকের কাছেই অজানা; তবে এটি ব্যবহার করে সপিফাই এর মত বড় বড় প্লাটফর্ম তৈরি করা হয়েছে। রুবি ল্যাঙ্গুয়জের একটাই লক্ষ্য; আর সেটি হচ্ছে ‘মানসম্মত কোড প্রস্তুত করা’।

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

রুবি হচ্ছে একটি পিওর অবজেক্ট-ওরিয়েন্টেড ল্যাংগুয়েজ

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

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

রুবি ল্যাংগুয়েজ এর বৈশিষ্ট

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

রুবি হচ্ছে একটি ডাইনামিক প্রোগ্রামিং ল্যাংগুয়েজ। প্রোগ্রামিং ল্যাগুয়েজের মূলত দুইটি ধরণ, আর এগুলো হচ্ছেঃ ডাইনামিক এবং স্ট্যাটিক; আর রুবি হচ্ছে একটি ডাইনামিক প্রোগ্রামিং ল্যাংগুয়েজ। মূলত প্রোগ্রামিং ল্যাংগুয়েজে দুটি বিষয় দেখা যায়, একটি হচ্ছে কম্পাইল টাইম এবং আরেকটি হচ্ছে রান টাইম।

YouTube channel list :

Smartherd :-  https://youtube.com/playlist?list=PLlxmoA0rQ-Lx45j3D6da7-Iqvo5wtjKBm


freeCodeCamp :- 

Traversy Media :- 

Learn Hunter :- https://youtube.com/playlist?list=PLbC4KRSNcMnp2FulKLgYpv9iB0D5uAT3V