تعرف على Composer
نبذة عن Composer
Composer عبارة عن أداة لإدارة المشاريع البرمجية dependency management
في PHP. تسمح لك بتحديد المكتبات البرمجية التي يعتمد عليها مشروعك و Comopser
يتولى ادارة المشروع من تثبيت و تحديث المكتبات لك.
dependency management
اهم مايميز Composer انها ليست مجرد أداة لإدارة المكتبات البرمجية مثل Yum او Apt
بأنظمة لينوكس. صحيح انها تتعامل مع المكتبات او الحزم البرمجية ولكن تتميز بإدارتها بناء
على احتياجات كل مشروع على حدة. حيث ان Composer يقوم بتثبيت المكتبات او الحزم
داخل مجلد بمسمى vendor داخل مجلد مشروعك. فلن يقوم Composer بتثبيت اي مكتبه
بمسار عام بجهازك ابدا بشكل افتراضي. ولهذا سمي dependency manager
هذه الفكرة ليست جديدة حيث ان Composer تم استوحاء الفكره من npm الأداة الخاصة
بـ node's و من bundler الأداة الخاصة بـ ruby's
لنفترض:
- لديك مشروع يعتمد على عدة مكتبات برمجية لتنفيذه
- وبعض هذه المكتبات يعتمد على مكتبات لتعمل بشكل سليم
مهمة Composer:
- يسمح لك بتحديد المكتبات التي تحتاجها انت بمشروعك فقط
-
يبحث Composer عن النسخ والمكتبات التي حددت ويقوم
بتثبيتها لك وتثبيت اي مكتبة جانبية لتعمل جميع المكتبات بدون
مشاكل
متطلبات تثبيت Composer بجهازك
يتطلب تثبيت Composer وجود PHP 5.3.2 أو أعلى وأيضا يجب تفعيل بعض إعدادت
PHP وتفعيل بعض المكتبات ليعمل Composer بشكل سليم ولكن عندما يتم استخدام مثبت
Composer سيقوم بعرض تحذيرات بأي نواقص او متطلبات يجب تفعيلها او تثبيتها ليعمل
بدون مشاكل.
طرق تثبيت Composer
Composer يعمل على جميع أنظمة التشغيل Windows و Linux و OSX بدون أي
مشاكل ويفضل إستخدام ملف التثبيت لتثبيت النسخة التي تناسب جهازك ونظام التشغيل لديك
تثبيت Composer على Windows
راجع طريقة تركيب composer على windows
تثبيت Composer على Linux / Unix / OSX
لدينا خيارين ان نثبت Composer بشكل محلي داخل مجلد مشروعك او نقوم بالتثبيت بشكل
عام وتستطيع إستخدامه بجميع مشاريعك وإدارة كل مشروع حسب احتياجاته
تثبيت Composer بشكل محلي Locally
عن طريق Terminal تصفح لداخل مجلد مشروعك عن طريق الأمر cd فلو كان مجلد المشروع
بسطح المكتب تستطيع الإنتقال لهذا المجلد عن طريق هذا الأمر
cd Desktop/projectFolder
وبعدها عن طريق Terminal قم بتنفيذ هذا الأمر
curl -sS https://getcomposer.org/installer | php
في حالة فشل هذا الأمر لأي سبب من الأسباب قم بعملية التثبيت بواسطة PHP
عن طريق Terminal نفذ هذا الأمر ليقوم PHP بعملية التثبيت
php -r "readfile('https://getcomposer.org/installer');" | php
سيقوم ملف التثبيت بالتاكد من إعدادات PHP وبعدها يقوم بتحميل ملف composer.phar
بداخل مجلد المشروع هذا الملف هو Composer وهو من نوع PHAR (PHP archive)
اي ملف ارشيف خاص بلغة PHP يتم تشغيله والتعامل معه عن طريق واجهة الأوامر
(command line)
للتاكد ان Composer تم تثبيته بنجاح قم بتنفيذ هذا الأمر عن طريق Terminal
وانت بداخل مجلد المشروع نفس المكان الذي تم تثبيت ملف Composer فيه
php composer.phar
سيظهر لك التالي إذا تم التركيب بنجاح
تثبيت Composer بشكل عام Globally
يمكنك تثبيت ملف Composer باي مكان لتستخدمه ولكن تستطيع تثبيت الملف بشكل عام ضمن
مسارات النظام وتستطيع استخدام الأداة حتى بدون استخدام PHP لتشغيل الملف بانظمة اليونكس
وهو المفضل.
لتثبيت composer بمسار عام قم بتنفيذ هذا الأمر عن طريق Terminal
curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer
في حالة فشل هذا الأمر بسبب الصلاحيات قم بتنفيذ الأمر mv باستخدام sudo
هذا الأمر يحتوي على sudo لضمان عملية التثبيت تتم بسلاسه بدون مشاكل الصلاحيات
curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer
بهذا الأمر استخدمنا أمر تحديد مكان التثبيت
--install-dir=
وامر تحديد اسم الملف بعد التثبيت
--filename=
ملاحظة مهمة: ببعض نسخ OSX المجلد usr ليس موجود بالأساس لذلك يجب ان تقوم انت بإنشاء هذا المجلد
في حال ظهر لك هذا الخطأ
/usr/local/bin/composer: No such file or directory
قم بإنشاء مجلد usr بشكل يدوي قبل اتمام عملية التثبيت بواسطة هذا الأمر
mkdir -p /usr/local/bin
للتاكد ان composer يعمل عن طريق Terminal قم بتنفيذ الأمر
composer
وستحصل على نفس النتيجة السابقة ولكن الفرق هنا انه اصبحت الأداة متوفرة لك بشكل عام وتستطيع استخدامها بجميع مشاريعك البرمجية بنجاح
طرق إستخدام Composer
الأن وبعد ان تعرفنا على Composer وطرق التثبيت يمكن البدء باستخدام الأداة لإدارة مشاريعك البرمجيه بكل يسر وسهولة عن طريق واجهة الأوامر سوف نوضح ابسط طرق الإستخدام بمقال آخر بإذن الله
التعليقات (6)
مقال ممتاز جدا
معلومة إضافية :
من أين يأتي composer بالحزم أو المكتبات؟
https://packagist.org/ المصدر الأساسي لـ composer
جميل يا استاذ علي
مقال ممتاز جدا
معلومة إضافية :من أين يأتي composer بالحزم أو المكتبات؟
https://packagist.org/ المصدر الأساسي لـ composer
يعطيك العافيه على أحلى إضافة
انا محتفظ بهالمعلومة للمقال القادم طرق استخدام Composer
جميل يا استاذ علي
والقادم اجمل بوجودكم
هل هذا الكومبوزر يتم تثبيته كذالك على السيرفر الإفتراضي ??
ماذا لو قمنا بتحميل المكتبات الأساسية يدويا دون استعمال هذه الأداة ?
وشكرا جزيلا لكم على طرح هذا الموضوع في انتظار الرد...
22 ساعات مضت, macdawne said:هل هذا الكومبوزر يتم تثبيته كذالك على السيرفر الإفتراضي ??
ماذا لو قمنا بتحميل المكتبات الأساسية يدويا دون استعمال هذه الأداة ?
وشكرا جزيلا لكم على طرح هذا الموضوع في انتظار الرد...
شرحنا بالمقال طريقة تثبيت Composer وهي عندك طريقتين ياتثبته بجاهزك بشكل عام او تستخدمه داخل مجلد مشروعك
هذي الاداة وجدت لتسهيل حياة المبرمجين بادرة الحزم والمكتبات البرمجيه المعتمدين عليها في بناء مشاريعهم تقدر تحمل المكتبات يدوي وتستخدمها ولكن متعبه ماذا لو مشروعك يحتاج ١٠ مكتبات وكل مكتبة تحتاج من ٥ الى ١٠ مكتبات لتعمل هل راح تبحث عنهم وتثبتهم او تستخدم Composer و هو يثبتهم لك بكل سهوله ثانيا توفر كمية الملفات والمجلدات الي بالمشروع وتضمن ان المبرمجين بنفس الفريق يستخدمون نفس المكتبات وبالاصدارات المحدده بعملهم بالتطوير فلما تشارك مشروعك مع الفريق تعطيهم اكواد المشروع مع ملفات composer فقط وهم باستخدام composer يثبتون نفس المكتبات والادوات الي انت ثبتها عندك باستخدام composer وامور كثير توفرها الاداة هذي مجرد اساسيات لها
شكر ا جزيلا لك وبارك الله فيك على التوضيح
عرض المزيد.. جديد مقالاتي
لايوجد لديك حساب في عالم البرمجة؟
تحب تنضم لعالم البرمجة؟ وتنشئ عالمك الخاص، تنشر المقالات، الدورات، تشارك المبرمجين وتساعد الآخرين، اشترك الآن بخطوات يسيرة !