استخدام روبي (Ruby)
يوفر ServBay لمطوري روبي بيئة تطوير فعّالة ومرنة على نظام macOS. بواسطة نظام إدارة الحزم في ServBay، يمكنك بسهولة تثبيت وإدارة عدة إصدارات من روبي بشكل متوازٍ، كما يمكنك بفضل ملف .servbay.config
القوي تعيين إصدار روبي المطلوب لكل مشروع، مما يبسط سير العمل ويضمن اتساق البيئة البرمجية.
لمحة عامة
مقدمة عن لغة روبي (Ruby)
روبي هي لغة برمجة كائنية التوجه، ديناميكية ومفتوحة المصدر، معروفة ببساطتها وأناقتها واهتمامها الكبير بإنتاجية المطور. تم ابتكارها في منتصف التسعينات على يد عالم الحاسوب الياباني يوكوهيرو "ماتز" ماتسوموتو. فلسفتها الأساسية هي "جعل البرمجة أكثر متعة". تأثرت روبي بلغات مثل Perl وSmalltalk وEiffel وAda وLisp، وتركز على جعل الشيفرة قابلة للقراءة والكتابة بأقل تعقيد.
كل شيء في روبي هو كائن. تدعم اللغة أنماط برمجة متعددة كالكائنية، والإجرائية، والبرمجة الوظيفية. زاد انتشار روبي بشكل كبير بفضل إطار Ruby on Rails، الذي أنشأه David Heinemeier Hansson (DHH) عام 2004، ما سرّع تطوير تطبيقات الويب بشكل لافت. اليوم، تُستخدم روبي على نطاق واسع في تطوير الويب (Rails, Sinatra)، كتابة السكريبتات، المهام التلقائية، تصميم النماذج الأولية وغيرها. وتعتمد منظومتها على RubyGems (مدير الحزم) وBundler (مدير الاعتمادات).
دعم ServBay للـ Ruby
يتعامل ServBay مع كل إصدار من مفسّر روبي كحزمة برمجية مستقلة، وهو ما يمنحك ميزات جوهرية أهمها:
- تعدد الإصدارات بشكل متوازي: يمكنك تثبيت عدة إصدارات من روبي في نفس الوقت (مثل 2.7، 3.0، 3.3، 3.4) بدون أي تعارض.
- تحكم بالإصدار على مستوى المشروع: من خلال ملف
.servbay.config
الفريد من ServBay، يمكنك تحديد إصدار روبي المطلوب بدقّة لكل مشروع. - إدارة مبسّطة: يمكنك استعراض، تثبيت أو إزالة أي إصدار من روبي مباشرة من واجهة ServBay الرسومية.
- دمج مع إدارة Gems: بعد تثبيت روبي، يمكنك مباشرة استخدام أمر
gem
لإدارة مكتبات RubyGems.
وهذا مهم جداً إذا كنت تدير مشاريع قديمة تعتمد على إصدارات روبي مختلفة، أو تطور مشاريع جديدة (مثل تطبيقات Rails)، أو ترغب بتشغيل أدوات وتطبيقات تتطلب إصداراً معيناً من روبي.
الوصول إلى حزم روبي
- افتح تطبيق ServBay.
- من القائمة الجانبية، اضغط على
الحزم (Packages)
. - في صفحة
الحزم
، انتقل للأسفل أو اختر من القائمة الجانبية:Languages
->Ruby
. - ستظهر قائمة بجميع إصدارات روبي المتاحة على الجهة اليمنى.
تثبيت روبي
تعرض قائمة الحزم حالة كل إصدار من روبي بوضوح:
- اسم الحزمة: اسم الحزمة مثل
Ruby 3.3
. - الإصدار: رقم الإصدار المحدد للحزمة.
- الحالة: تظهر إما
Installed
(مثبت) أوNot Installed
(غير مثبت). - التحكم: أزرار للإجراءات.
لتثبيت إصدار غير مثبت من روبي (مثل Ruby 3.3
):
- ابحث عن الإصدار المطلوب في القائمة.
- تأكد أن حالته
Not Installed
. - اضغط على أيقونة التنزيل/التثبيت (Download/Install) أقصى يمين الصف (عادة سهم للأسفل).
- سيبدأ ServBay في تحميل وتثبيت إصدار روبي المحدد؛ قد تستغرق العملية بعض الوقت.
- بعد انتهاء التثبيت بنجاح، ستتغير حالته إلى
Installed
، وستظهر مكان أيقونة التثبيت أيقونة إزالة التثبيت (Uninstall) (سلة المهملات).
إدارة الإصدارات المثبتة من روبي
- استعراض الإصدارات المثبتة: الإصدارات التي تظهر حالتها
Installed
في القائمة تمثل تلك المتوفرة حالياً في بيئتك. - إزالة روبي: إذا لم تعد بحاجة إلى إصدار معين، اضغط على أيقونة إلغاء التثبيت (Uninstall) (سلة المهملات) بجانيه وأكد العملية لإزالته كلياً من النظام.
استخدام روبي المثبت
يقوم ServBay بعد تثبيت روبي، بإضافته إلى متغيرات البيئة التي يديرها. عند تفعيل بيئة ServBay في الطرفية (Terminal)، يمكنك استخدام أوامر ruby
وgem
مباشرة.
أمثلة للأوامر الشائعة:
التحقق من إصدار روبي الحالي النشط: افتح الطرفية واكتب:
bashruby -v
1سيظهر لك الإصدار الافتراضي من روبي النشط حالياً. قد يتأثر بحسب الإعدادات العامة أو ملف
.servbay.config
الخاص بالمشروع.التحقق من إصدار RubyGems:
bashgem -v
1تثبيت حزم Gem: على سبيل المثال تثبيت مولّد المواقع الثابتة الشهير Jekyll:
bashgem install jekyll
1أو تثبيت إطار Ruby on Rails:
bashgem install rails
1تشغيل ملفات روبي: أنشئ ملف باسم
hello.rb
يحتوي على:ruby#!/usr/bin/env ruby puts "Hello from Ruby in ServBay!"
1
2وشغّله في الطرفية:
bashruby hello.rb
1
إدارة الإصدارات على مستوى المشروع: .servbay.config
من أبرز ميزات ServBay هي دعمه لتكوين البيئة على مستوى المشروع. بوضع ملف باسم .servbay.config
في جذر مشروعك، يمكنك تحديد إصدار روبي المطلوب لهذا المشروع بدقة.
المزايا:
- إدارة متعددة للغات: إدارة إصدارات روبي وPHP وNode.js وPython وGo وJava و.NET وغيرها في نفس الملف.
- اتساق مضمون: ضمان عمل جميع أعضاء الفريق أو على البيئات المختلفة بنفس إصدار روبي.
- تبديل تلقائي: عند الدخول إلى مجلد يحتوي على
.servbay.config
بواسطة أمرcd
، يقوم ServBay بتفعيل وإعداد البيئة تلقائياً حسب متغيرRUBY_VERSION
الموجود في الملف.
مثال إعداد:
في جذر مشروع روبي الخاص بك، أنشئ ملف .servbay.config
وأضف متغير RUBY_VERSION
لتحدد إصدار روبي الرئيسي المطلوب (مثل 2.7 أو 3.3). سيستخدم ServBay أحدث إصدار مثبّت من هذا الإصدار الرئيسي ضمن نفس السلسلة.
# .servbay.config
# حدد إصدار روبي الرئيسي للمشروع (مثلاً 3.3)
# سيستخدم ServBay تلقائياً أحدث إصدار مثبت من سلسلة 3.3.x
RUBY_VERSION=3.3
# يمكنك أيضاً تحديد إصدارات ولغات أخرى وإعدادات مختلفة
NODE_VERSION=18
# ... إعدادات إضافية ...
2
3
4
5
6
7
8
9
عند فتح الطرفية في هذا المجلد وتفعيل بيئة ServBay، سيظهر لك عند تشغيل ruby -v
ذلك الإصدار من روبي الذي حددته في .servbay.config
(أو أعلى إصدار مثبت ضمن نفس السلسلة).
مثال بسيط للاستخدام
لنجرب إنشاء مشروع بسيط لنوضح كيفية استخدام .servbay.config
:
إنشاء مجلد المشروع:
bashmkdir my-ruby-project cd my-ruby-project
1
2إنشاء ملف
.servbay.config
: في المجلد، أنشئ ملف اسمه.servbay.config
يحتوي على:iniRUBY_VERSION=2.7 # بافتراض أنك ثبت إصدار روبي 2.7.x
1(تأكد أنك ثبّتت إصدار روبي 2.7 في ServBay)
إنشاء سكريبت روبي: أنشئ ملف
app.rb
بالمحتوى:ruby#!/usr/bin/env ruby puts "Project is using Ruby version: #{RUBY_VERSION}"
1
2تفعيل والتحقق: (مع التأكد من تفعيل بيئة ServBay في الطرفية) شغّل:
bashruby -v
1سيُظهر الإصدار 2.7.x من روبي المثبت لديك.
تشغيل السكريبت:
bashruby app.rb
1وسيظهر:
Project is using Ruby version: 2.7.x
(حيث x رقم المراجعة المثبتة).تثبيت تبعيات المشروع (مثال): إذا كان مشروعك يستخدم Bundler لإدارة التبعيات (شائع في تطبيقات Rails)، يمكنك تنفيذ:
bash# إذا لم يكن bundler مثبتاً # gem install bundler bundle install
1
2
3سيقوم Bundler بتثبيت التبعيات بناءً على ملف
Gemfile
الموجود في المشروع، مستخدماً إصدار روبي النشط (2.7.x).
الآن، إذا كنت تملك مشروعاً آخر بحاجة لإصدار Ruby 3.4، ما عليك سوى وضع RUBY_VERSION=3.4
في ملف .servbay.config
الخاص بذلك المشروع. وسيقوم ServBay تلقائياً بتبديل بيئة روبي المطلوبة عند تغيير المجلد.
دمج خادم الويب (Rails, Sinatra وغيرهما)
لتطبيقات الويب المبنية باستخدام Ruby on Rails أو Sinatra أو أي إطار آخر، فعادةً ما يتم تشغيلها عبر خوادم تطبيقات مثل Puma أو Unicorn أو Thin. تستطيع:
- إنشاء موقع ويب (Website) لتطبيقك داخل ServBay.
- إعداد خادم الويب في ServBay (مثل Nginx أو Caddy أو Apache) كـ وكيل عكسي (Reverse Proxy) لتوجيه الطلبات من نطاق معين إلى منفذ تطبيق روبي الخاص بك مثل
http://localhost:3000
أو عبر سوكيت خاص بـ Puma/Unicorn.
هذه الطريقة تسمح لك بالاستفادة من قدرات إدارة النطاقات في ServBay، وتفعيل HTTPS التلقائي (إن توفّر)، وتوحيد مدخل الدخول إلى التطبيق.
الخلاصة
يمنحك ServBay سهولة ومرونة فائقة في تطوير مشاريع روبي على macOS. عبر واجهة إدارة الحزم البديهية وخصائص ضبط الإصدارات على مستوى المشروع باستخدام .servbay.config
، يمكنك التحكم بسهولة في إصدارات روبي وإدارة مكتبات Gems وإتاحة بيئات منفصلة وآمنة لمشاريعك المختلفة، مما يعزز إنتاجيتك في تطوير تطبيقات روبي.