تطوير بايثون باستخدام ServBay
تُعتبر بايثون لغة برمجة قوية ومرنة، تُستخدم على نطاق واسع في تطوير الويب، علوم البيانات، وأتمتة السكريبتات وغيرها. صُممت أداة ServBay لتوفير بيئة تطوير محلية متكاملة للمطورين، مع دعم ممتاز لعدة إصدارات من بايثون وسهولة التكامل مع مكونات أخرى مثل خوادم الويب وقواعد البيانات. هكذا يمكنك بناء سير عمل تطوير كامل على جهازك.
ما هي بايثون؟
بايثون لغة برمجة عالية المستوى ومفسرة وعامة الاستخدام، تشتهر ببنية كتابتها البسيطة والواضحة، مع وظائف قوية. ترتكز فلسفتها على قابلية القراءة والبساطة، ما يجعلها مثالية لتطوير التطبيقات بسرعة. تدعم بايثون عدة أنماط برمجية مثل البرمجة الكائنية، الإجرائية، الدالية، والوظيفية. وتلمع قوتها في مكتبتها القياسية الواسعة ونظام الطرف الثالث المترامي الأطراف، ما يجعلها خياراً شائعاً لتطوير الويب (مثل Django، Flask)، تحليل البيانات، الذكاء الاصطناعي، والحوسبة العلمية.
دعم ServBay للبايثون
يهدف ServBay إلى تسهيل تثبيت وإدارة عدة إصدارات من بايثون دون القلق من تعارض نظام بايثون أو العمليات المعقدة. يمكنك التبديل بسهولة بين الإصدارات لتتناسب مع متطلبات مشاريعك المختلفة.
يدعم ServBay الإصدارات التالية (مع إمكانية التحديث حسب إصدار ServBay):
- Python 2.7
- Python 3.5
- Python 3.6
- Python 3.7
- Python 3.8
- Python 3.9
- Python 3.10
- Python 3.11
- Python 3.12
- Python 3.13
- Python 3.14 (وما بعدها)
تشمل هذه القائمة الإصدار القديم Python 2.7 ذو الاستخدامات الخاصة، وأحدث إصدارات Python 3.x السائدة، ما يضمن لك اختيار الإصدار الأنسب لكل مشروع.
تثبيت بايثون
تثبيت بايثون عبر واجهة ServBay الرسومية أمر سهل جداً:
- افتح لوحة واجهة ServBay الرسومية.
- توجه لقائمة
الحزمفي الشريط الجانبي. - ابحث عن تصنيف
Pythonفي قائمة الحزم. - عند فتح تصنيف Python ستظهر لك قائمة بالإصدارات المدعومة.
- اختر الإصدار الذي ترغب به (مثلاً Python 3.12) واضغط زر
تثبيتالأخضر بجانبه. - يقوم ServBay تلقائياً بتنزيل وتثبيت الإصدار المختار، وعند اكتمال العملية سيتحول الزر للأخضر للدلالة على التثبيت.
لوحة حزم ServBay GUI تعرض إصدارات بايثون وزر التثبيت
يمكنك تثبيت أكثر من إصدار بايثون حسب الحاجة.
استخدام بايثون في سطر الأوامر
تتم إضافة كل إصدار بايثون تثبته عبر ServBay إلى بيئة ServBay، ويمكنك الوصول إليه مباشرة من سطر الأوامر. يقوم ServBay تلقائياً بضبط متغير PATH في بيئة الطرفية لتسهيل الاستخدام.
عادةً توفر لك ServBay الأوامر التالية:
python: يشير عادةً إلى أحدث إصدار Python 3 تم تثبيته.python2: يشير إلى Python 2.7 (إن وجد).python3: يشير إلى أحدث إصدار Python 3.pythonX.Y: للوصول لإصدار محدد مثلpython3.12(إن توفر).
يمكنك التحقق من الإصدارات المثبتة عبر الطرفية في ServBay (من زر الطرفية في الواجهة) أو من الطرفية الاعتيادية (إذا تم ضبط PATH):
bash
# التحقق من أي إصدار يشير إليه الأمر python
python -V
# مثال ناتج: Python 3.12.2
# التحقق من python3
python3 -V
# مثال ناتج: Python 3.12.2
# إذا كان Python 2.7 مثبتاً
python2 -V
# مثال ناتج: Python 2.7.18
# لاستدعاء إصدار محدد مباشرةً
python3.10 -V
# مثال ناتج: Python 3.10.131
2
3
4
5
6
7
8
9
10
11
12
13
14
15
2
3
4
5
6
7
8
9
10
11
12
13
14
15
تشغيل سكريبت بايثون بسيط:
أنشئ ملفًا جديدًا باسم
hello.pyفي جذر موقعك (مثلاً/Applications/ServBay/www) أو أي مكان تفضله.أضف الكود التالي داخل الملف:
python# hello.py print("Hello from ServBay Python!")1
2احفظ الملف.
افتح الطرفية (من ServBay أو من النظام إذا كان PATH معدًا).
انتقل لمسار الملف.
شغّل السكريبت:
bash# إذا كان hello.py في مجلد www cd /Applications/ServBay/www python hello.py # الناتج: Hello from ServBay Python!1
2
3
4أو باستخدام إصدار محدد:
bashpython3.12 hello.py # الناتج: Hello from ServBay Python!1
2
إدارة حزم بايثون (باستخدام pip)
كل إصدار بايثون من ServBay يأتي مع أداة إدارة الحزم pip لتثبيت المكتبات الخارجية وإدارتها.
TIP
يأتي ServBay مزوداً بأداة pip دون الحاجة لتثبيت منفصل.
أمر تثبيت الحزم الأساسي هو pip install <اسم_الحزمة>. لاحظ: عند وجود أكثر من إصدار بايثون، تأكد من استخدام pip الخاص بالإصدار المطلوب (عادةً pipX.Y أو عبر pythonX.Y -m pip).
- استخدام pip الافتراضية (ترتبط غالباً مع python أو python3):bash
pip install requests1 - استخدام pip لإصدار محدد:bash
pip3.12 install requests1 - باستخدام النمط المفضل عبر الموديول:bash
python3.12 -m pip install requests1
عزل تبعيات المشروع بواسطة بيئة بايثون الافتراضية
رغم أن ServBay يسمح بتثبيت واستخدام عدة إصدارات عالمية من بايثون، ننصح بشدة باستخدام البيئة الافتراضية (Virtual Environments) لإدارة تبعيات كل مشروع.
لماذا البيئة الافتراضية مهمة؟
- عزل التبعيات: غالباً تمتلك المشاريع متطلبات مكتبية مختلفة (مثلاً: المشروع A يحتاج
requests==2.25.0والمشروع B يحتاجrequests==2.28.1). البيئة الافتراضية تفصل التبعيات وتمنع حدوث تضارب بين المشاريع. - تسلسل البيئة: تضمن تكرار نفس التبعيات في التطوير، الاختبار، أو حتى الإنتاج. عادة ما تُدار عبر ملفات كـ
requirements.txtأوpyproject.toml. - تنظيف النظام: تمنع تكدس الحزم الخاصة بمشاريعك ضمن بايثون ServBay العام.
كيفية إنشاء واستخدام البيئة الافتراضية (venv):
افترض أنك تريد إنشاء مشروع my_flask_app باستخدام بايثون 3.12 من ServBay:
- اختر إصدار بايثون: ولنفترض
python3.12. - أنشئ بيئة افتراضية:bashهذا سيولّد مجلد
# انتقل لمجلد مشاريعك cd /Applications/ServBay/www # أنشئ مجلد المشروع mkdir my_flask_app cd my_flask_app # أنشئ venv باستخدام بايثون المطلوب python3.12 -m venv .venv1
2
3
4
5
6
7
8.venvيحوي نسخة مستقلة من مفسر بايثون وpip والمكتبات. - تفعيل البيئة الافتراضية:bashبعد التفعيل، ستلاحظ ظهور بادئة
# في macOS source .venv/bin/activate1
2(.venv)في سطر الأوامر، وكل منpythonوpipسيوجه تلقائياً للبيئة الافتراضية. - تثبيت التبعيات:bash
# جميع الحزم ستُثبت داخل .venv فقط pip install Flask requests # عرض قائمة الحزم المثبتة pip list1
2
3
4
5 - طوّر تطبيقك كما اعتدت ...
- تعطيل البيئة: انه عملك بالأمر:bash
deactivate1
تكمل البيئة الافتراضية وظيفة ميزة .servbay.config التي سنتناولها تالياً لعزل ومرونة تطوير مشروعك.
إدارة إصدار بايثون الخاص بالمشروع عبر .servbay.config
يوفر ServBay خاصية قوية تسمح بإعداد ملف باسم .servbay.config في جذر مشروعك لتهيئة بيئة التطوير لمشروعك تلقائياً، خاصة تحديد إصدار بايثون.
كيف تعمل هذه الميزة؟
عندما تتنقل عبر الطرفية إلى مجلد يحوي ملف .servbay.config، يقرأ ServBay الملف ويعدل المتغيرات البيئية مؤقتاً لجلسة الطرفية الحالية، ما يجعل أوامر مثل python, php, node تعمل بالإصدار المحدد في الملف.
لا تؤثر .servbay.config على خادم الويب نفسه، بل تقتصر على سطر الأوامر فقط ولكل مجلد المشروع وأية مجلدات فرعية.
بنية الملف:
هو ملف نصي بسيط بنظام مفتاح-قيمة. لتحديد إصدار بايثون أضف المفتاح PYTHON_VERSION بالقيمة للإصدار المطلوب (مثلاً 3.11, 3.12).
ini
# مثال لملف .servbay.config
# تعيين بايثون 3.11 لهذا المشروع
PYTHON_VERSION=3.11
# يمكن أيضاً تحديد إصدارات أدوات أخرى
PHP_VERSION=8.2
NODE_VERSION=20
# ... إعدادات أخرى: مستودعات npm أو مسارات كاش ...
# NPM_CONFIG_REGISTRY=https://registry.npmmirror.com/
# GOPROXY=https://goproxy.cn,direct1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
الفوائد:
- تبديل تلقائي للإصدارات: لن تحتاج لتغيير بايثون العالمي يدوياً، أو تفعيل بيئة افتراضية في كل مرة (رغم أن البيئة الافتراضية لا تزال الأفضل لإدارة التبعيات).
- عزل كل مشروع: يضمن أن كل مشروع سيعمل بالإصدار الذي يحدده، ويمنع المشكلات الناتجة عن تغيير البيئة العامة.
- التعاون: يمكنك ضم
.servbay.configمع مشروعك في Git ليحصل كل أعضاء الفريق على نفس إعدادات بيئة الأساس بعد الاستنساخ.
سيناريو استخدام:
افترض أن لديك مشروعين:
project-aيتطلب Python 3.11project-bيتطلب Python 3.14
أنشئ ملف .servbay.config في كل مجلد كالتالي:
/Applications/ServBay/www/project-a/.servbay.config:iniPYTHON_VERSION=3.111/Applications/ServBay/www/project-b/.servbay.config:iniPYTHON_VERSION=3.141
الآن، عند الدخول للطرفية في /Applications/ServBay/www/project-a وتشغيل python -V، ستجد بايثون 3.11.x. وإذا اتجهت إلى /Applications/ServBay/www/project-b وشغلت الأمر نفسه ستجد بايثون 3.14.x.

ملاحظة: ملف .servbay.config يضبط فقط الإصدار الأساسي لبايثون الذي يتعرف عليه ServBay في البيئة. لإدارة تبعيات الحزمة بشكل دقيق لكل مشروع لا تزال بحاجة لاستخدام بيئة افتراضية (venv أو pipenv أو poetry) داخل هذا الإصدار.
التكامل مع مكونات ServBay الأخرى
ما يميز ServBay هو تكامله ضمن بيئة تطوير محلية شاملة. يمكنك دمج بايثون بسهولة مع باقي المكونات:
- تطوير الويب: استعمل Caddy أو Nginx من ServBay كخادم ويب لاستضافة تطبيقات بايثون (Django أو Flask)، عبر ضبط الخادم لإعادة توجيه الطلبات إلى خادم تطبيق بايثون (Gunicorn، uWSGI).
- قواعد البيانات: كثير من تطبيقات بايثون تحتاج قاعدة بيانات. يدعم ServBay MySQL وPostgreSQL وMongoDB وغيرها، ويمكنك استخدام مكتبات بايثون الاتصالية المناسبة مثل
psycopg2لـ PostgreSQL وmysql-connector-pythonلـ MySQL. - الكاش: يمكن لتطبيقات بايثون الاستفادة من Redis أو Memcached لزيادة الأداء.
ملاحظات هامة
- PATH: يقوم ServBay بتعديل متغير PATH في الطرفية ليعطي أولوية لأدوات ServBay. إذا كان لديك نسخ أخرى من بايثون خارج ServBay، تحقق عبر
which pythonأوwhich python3لمعرفة أيها يُستخدم افتراضياً. - البيئة الافتراضية: رغم وجود إصدارات عالمية عبر ServBay، تبقى البيئة الافتراضية الخيار الأمثل لعزل تبعيات المشروع والحفاظ على بيئة نظيفة.
- التبعيات: بعض حزم بايثون تتطلب مكتبات أو أدوات نظام إضافية (مثلاً أدوات تجميع أو مكتبات تطوير). إذا واجهت خطأ عند التثبيت، راجع توثيق الحزمة أو رسائل الخطأ، وربما يلزمك تثبيت الاعتماديات عبر Homebrew أو أداة أخرى.
الأسئلة الشائعة (FAQ)
س: هل يمكن لـ ServBay إدارة وجود Python 2.x وPython 3.x معاً؟
ج: نعم، يمكنك تثبيت كليهما عبر ServBay واستخدام الأوامر python2 وpython3 لتشغيلهما حسب الحاجة.
س: لدي عدة إصدارات بايثون مثبتة، كيف أضبط الأمر python ليشير لإصدار محدد؟
ج: حدد الإصدارات الافتراضية في إعدادات ServBay. لأتمتة إصدار خاص بمشروع، ننصح باستخدام ملف .servbay.config في جذر المشروع؛ عندها سيُعتمد الإصدار المذكور تلقائياً عند دخول المجلد.
س: كيف أثبت مكتبة خارجية في بايثون ServBay؟
ج: استخدم أمر pip المرتبط بالإصدار المطلوب، مثل python3.12 -m pip install <اسم_الحزمة>. ويفضل تنفيذ الأمر داخل البيئة الافتراضية للمشروع.
س: كيف أضبط خادم الويب في ServBay لتشغيل تطبيق بايثون ويب؟
ج: ستحتاج عادة لتعديل إعدادات Caddy أو Nginx لإضافة قاعدة إعادة توجيه (Reverse Proxy) نحو خادم تطبيق بايثون الذي يعمل على بورت مخصص. التفاصيل تعتمد على إطار العمل وخادم التطبيق الذي تستعمله. راجع توثيق ServBay لخطوات الإعداد.
الخلاصة
يقدم ServBay للمطورين على macOS بيئة تطوير محلية مدمجة وسهلة لإدارة مشاريع بايثون. يمكنك تثبيت وإدارة عدة إصدارات من بايثون، استخدام pip لإدارة التبعيات، والتكامل مع خوادم الويب وقواعد البيانات بسهولة. بدمج البيئة الافتراضية مع ميزات ServBay، تستطيع إنشاء بيئة مستقرة ومعزولة لكل مشروع، ما يرفع كفاءة وسلاسة التطوير والاختبار المحلي.
