معرفی روبی
روبی چیست، چه نقشی در دنیای فناوری دارد و چرا یکی از محبوبترین زبانهای برنامهنویسی است؟
روبی چیست؟
روبی (Ruby) یک زبان برنامهنویسی سطح بالا، مفسری، متنباز و شیءگرا است که در سال ۱۹۹۵ توسط یوکیهیرو ماتسوموتو (Yukihiro Matsumoto) یا همان «ماتز» (Matz) در ژاپن ساخته شد. هدف اصلی طراحی روبی سادگی، خوانایی و لذت برنامهنویسی بوده است.
ماتز معتقد بود برنامهنویسی باید سرگرمکننده باشد و روبی را طوری طراحی کرد که کد آن نزدیک به زبان انگلیسی و طبیعی باشد. شعار معروف روبی این است: «برای افزایش بهرهوری و لذت برنامهنویس».
چرا روبی اینقدر محبوب است؟
| ویژگی | توضیح |
|---|---|
| سادگی و خوانایی | سینتکس تمیز و نزدیک به زبان انگلیسی |
| کاملاً شیءگرا | هر چیزی در روبی یک شی است — حتی اعداد! |
| تایپ پویا | نیازی به تعریف نوع متغیر نیست |
| فریمورک Rails | Ruby on Rails یکی از قدرتمندترین فریمورکهای وب |
| جامعه بزرگ | هزاران Gem (کتابخانه) آماده و جامعه فعال |
| متنباز و رایگان | کاملاً رایگان و قابلاستفاده برای همه |
| چندسکویی | روی ویندوز، مک، لینوکس اجرا میشود |
روبی کجا استفاده میشود؟
روبی یک زبان همهکاره (General-purpose) است:
- 🌐 توسعه وب: ساخت سایت با Ruby on Rails (GitHub، Shopify، Airbnb)
- ⚙️ اسکریپتنویسی و اتوماسیون: خودکارسازی کارهای تکراری
- 🔧 DevOps: ابزارهای مدیریت پیکربندی مثل Chef و Puppet
- 📊 پردازش داده: Web Scraping با Nokogiri
- 🎮 توسعه بازی: با کتابخانههایی مثل Gosu
- 🔌 API و سرویسها: ساخت RESTful API
روبی کاملاً شیءگرا است
برخلاف بسیاری از زبانها، در روبی هر چیزی یک شی (Object) است — حتی اعداد!
# در روبی، اعداد هم شی هستند
puts 5.class # => Integer
puts (-5).abs # => 5 (قدر مطلق)
puts 3.times { puts "سلام" } # سه بار چاپ میکند
تاریخچه مختصر روبی
| نسخه | سال | ویژگی برجسته |
|---|---|---|
| Ruby 0.95 | ۱۹۹۵ | اولین نسخه عمومی در ژاپن |
| Ruby 1.8 | ۲۰۰۳ | محبوبیت جهانی |
| Ruby 1.9 | ۲۰۰۷ | بازنویسی بزرگ، YARV |
| Ruby 2.0 | ۲۰۱۳ | Keyword arguments |
| Ruby 3.0 | ۲۰۲۰ | سرعت ۳ برابری، Ractor |
| Ruby 3.3 | ۲۰۲۳ | بهبود عملکرد و YJIT |
«روبی» از کجا آمده؟
نام «روبی» (Ruby به معنی یاقوت سرخ) توسط ماتز انتخاب شد. او قبل از آن زبان Perl (مروارید) را استفاده میکرد و تصمیم گرفت نام gem (سنگ قیمتی) را برای زبان خود انتخاب کند. Ruby (یاقوت) انتخاب شد چون سنگی زیبا و ارزشمند است — دقیقاً مثل این زبان! 💎
یک نمونه کد روبی
برای اینکه سادگی روبی را حس کنید، به این کد نگاه کنید:
puts "سلام دنیا!"
همین یک خط! بدون نیاز به کلاس، بدون تابع main، بدون نقطه ویرگول. فقط puts و پیامتان. این همان فلسفه روبی است: ساده، واضح، زیبا.
تفاوت روبی با زبانهای دیگر
| ویژگی | Ruby | Python | PHP | JavaScript |
|---|---|---|---|---|
| نوع اجرا | مفسری | مفسری | مفسری | مفسری |
| تایپ | پویا | پویا | پویا | پویا |
| شیءگرایی | کاملاً | بله | بله | بله |
| بلوکها | do...end | تورفتگی | { } | { } |
| سمت اجرای اصلی | سرور | عمومی | سرور | مرورگر/سرور |
چرا روبی یاد بگیریم؟
- لذت برنامهنویسی: روبی طوری طراحی شده که برنامهنویسی با آن لذتبخش باشد
- Ruby on Rails: یکی از سریعترین فریمورکهای توسعه وب
- بازار کار: تقاضای بالا برای توسعهدهندگان Ruby/Rails
- جامعه فعال: هزاران Gem آماده برای هر کاری
- یادگیری آسان: سینتکس ساده و طبیعی
در این دوره چه چیزی یاد میگیرید؟
- مبانی روبی: متغیرها، انواع داده، عملگرها
- کنترل جریان: شرطها و حلقهها
- متدها، بلوکها، Proc و Lambda
- کار با آرایه، هش و نمادها
- شیگرایی (OOP): کلاس، وراثت، ماژول
- کار با فایل، خطاها و استثناها
- مباحث پیشرفته: Enumerable، متاپروگرمینگ
- پروژههای عملی
آمادهاید؟ بریم شروع کنیم! 💎🚀
این مبحث بخشی از دوره آموزش کامل روبی است.