استخدام روبي (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 -v1سيظهر لك الإصدار الافتراضي من روبي النشط حالياً. قد يتأثر بحسب الإعدادات العامة أو ملف
.servbay.configالخاص بالمشروع.التحقق من إصدار RubyGems:
bashgem -v1تثبيت حزم Gem: على سبيل المثال تثبيت مولّد المواقع الثابتة الشهير Jekyll:
bashgem install jekyll1أو تثبيت إطار Ruby on Rails:
bashgem install rails1تشغيل ملفات روبي: أنشئ ملف باسم
hello.rbيحتوي على:ruby#!/usr/bin/env ruby puts "Hello from Ruby in ServBay!"1
2وشغّله في الطرفية:
bashruby hello.rb1
إدارة الإصدارات على مستوى المشروع: .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 أحدث إصدار مثبّت من هذا الإصدار الرئيسي ضمن نفس السلسلة.
ini
# .servbay.config
# حدد إصدار روبي الرئيسي للمشروع (مثلاً 3.3)
# سيستخدم ServBay تلقائياً أحدث إصدار مثبت من سلسلة 3.3.x
RUBY_VERSION=3.3
# يمكنك أيضاً تحديد إصدارات ولغات أخرى وإعدادات مختلفة
NODE_VERSION=18
# ... إعدادات إضافية ...1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
عند فتح الطرفية في هذا المجلد وتفعيل بيئة ServBay، سيظهر لك عند تشغيل ruby -v ذلك الإصدار من روبي الذي حددته في .servbay.config (أو أعلى إصدار مثبت ضمن نفس السلسلة).
مثال بسيط للاستخدام
لنجرب إنشاء مشروع بسيط لنوضح كيفية استخدام .servbay.config:
إنشاء مجلد المشروع:
bashmkdir my-ruby-project cd my-ruby-project1
2إنشاء ملف
.servbay.config: في المجلد، أنشئ ملف اسمه.servbay.configيحتوي على:iniRUBY_VERSION=2.7 # بافتراض أنك ثبت إصدار روبي 2.7.x1(تأكد أنك ثبّتت إصدار روبي 2.7 في ServBay)
إنشاء سكريبت روبي: أنشئ ملف
app.rbبالمحتوى:ruby#!/usr/bin/env ruby puts "Project is using Ruby version: #{RUBY_VERSION}"1
2تفعيل والتحقق: (مع التأكد من تفعيل بيئة ServBay في الطرفية) شغّل:
bashruby -v1سيُظهر الإصدار 2.7.x من روبي المثبت لديك.
تشغيل السكريبت:
bashruby app.rb1وسيظهر:
Project is using Ruby version: 2.7.x(حيث x رقم المراجعة المثبتة).تثبيت تبعيات المشروع (مثال): إذا كان مشروعك يستخدم Bundler لإدارة التبعيات (شائع في تطبيقات Rails)، يمكنك تنفيذ:
bash# إذا لم يكن bundler مثبتاً # gem install bundler bundle install1
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 وإتاحة بيئات منفصلة وآمنة لمشاريعك المختلفة، مما يعزز إنتاجيتك في تطوير تطبيقات روبي.
