تطوير بايثون باستخدام 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):
# التحقق من أي إصدار يشير إليه الأمر 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.13
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 requests
1 - استخدام pip لإصدار محدد:bash
pip3.12 install requests
1 - باستخدام النمط المفضل عبر الموديول:bash
python3.12 -m pip install requests
1
عزل تبعيات المشروع بواسطة بيئة بايثون الافتراضية
رغم أن 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 .venv
1
2
3
4
5
6
7
8.venv
يحوي نسخة مستقلة من مفسر بايثون وpip والمكتبات. - تفعيل البيئة الافتراضية:bashبعد التفعيل، ستلاحظ ظهور بادئة
# في macOS source .venv/bin/activate
1
2(.venv)
في سطر الأوامر، وكل منpython
وpip
سيوجه تلقائياً للبيئة الافتراضية. - تثبيت التبعيات:bash
# جميع الحزم ستُثبت داخل .venv فقط pip install Flask requests # عرض قائمة الحزم المثبتة pip list
1
2
3
4
5 - طوّر تطبيقك كما اعتدت ...
- تعطيل البيئة: انه عملك بالأمر:bash
deactivate
1
تكمل البيئة الافتراضية وظيفة ميزة .servbay.config
التي سنتناولها تالياً لعزل ومرونة تطوير مشروعك.
إدارة إصدار بايثون الخاص بالمشروع عبر .servbay.config
يوفر ServBay خاصية قوية تسمح بإعداد ملف باسم .servbay.config
في جذر مشروعك لتهيئة بيئة التطوير لمشروعك تلقائياً، خاصة تحديد إصدار بايثون.
كيف تعمل هذه الميزة؟
عندما تتنقل عبر الطرفية إلى مجلد يحوي ملف .servbay.config
، يقرأ ServBay الملف ويعدل المتغيرات البيئية مؤقتاً لجلسة الطرفية الحالية، ما يجعل أوامر مثل python
, php
, node
تعمل بالإصدار المحدد في الملف.
لا تؤثر .servbay.config
على خادم الويب نفسه، بل تقتصر على سطر الأوامر فقط ولكل مجلد المشروع وأية مجلدات فرعية.
بنية الملف:
هو ملف نصي بسيط بنظام مفتاح-قيمة. لتحديد إصدار بايثون أضف المفتاح PYTHON_VERSION
بالقيمة للإصدار المطلوب (مثلاً 3.11
, 3.12
).
# مثال لملف .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,direct
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.11
1/Applications/ServBay/www/project-b/.servbay.config
:iniPYTHON_VERSION=3.14
1
الآن، عند الدخول للطرفية في /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، تستطيع إنشاء بيئة مستقرة ومعزولة لكل مشروع، ما يرفع كفاءة وسلاسة التطوير والاختبار المحلي.