Composer هو أداة لإدارة الاعتماديات في لغة PHP، تخيل أنّك تعمل على مشروع يتضمن العديد من الاعتماديات التابعة لمشاريع أو مكتبات أخرى. سيدير Composer بالطرق التالية:
تحميل مكتبة الاعتمادية من مستودعاتها إلى مشروعك بصورة تلقائية.
يمكنك وبكلّ سهولة تحديث مكتبتك عند ظهور إصدار جديد منها.
عند تحميل مكتبة الاعتمادية يتحقّق composer من المتطلبات الدنيا للخادوم.
سينشئ Composer ملف autoloader.php لجميع المكتبات المحمّلة وسيحمّل الاعتمادية كاملةً في المشروع الذي تعمل عليه.
ماذا سيحصل إن لم تستخدم Composer؟
ستضطرّ إلى تحميل مكتبة الاعتمادية يدويًّا.
يجب عليك التحقّق من الإصدارات الجديدة للمكتبات دوريًّا، وتحميل الملفات إلى المشروع يدويًّا.
يجب عليك تحميل جميع المكتبات إلى مشروعك باستخدام دالتي require أو include.
إليك المثال التالي لتوضيح ما سبق:
لديك مشروع تعمل عليه باستخدام إطار عمل Cakephp أو Laravel، وترغب في إضافة خاصية إرسال الرسائل إلكترونية إلى المشروع وتحتاج إلى اتصال من نوع SMTP. ستقوم حينها بتحميل إحدى المكتبات المتخصّصة في هذا المجال مثل Phpmailer أو Swiftmailer.
إن استخدمت composer للحصول على هذا المكتبات، فسيكون بميسورك تحميل المكتبة المطلوبة مباشرة إلى مجلد vendor ضمن المشروع. وإن حصلت هذه المكتبة على تحديث جديد، يكفي أن تنفّذ أمرًا واحدًا في سطر الأوامر، ولن تكون بحاجة إلى التحقّق ممّا إذا كان التحديث متوافقًا مع الإصدار 5.4 أو 5.3 من php.
سيتّضح الأمر أكثر فأكثر من خلال الأمثلة التالية.
كيف يتم تثبيت Composer في النظام
قبل تثبيت composer يجب التحقّق من أنّك تعمل على الإصدار 5.4 وما بعده من لغة PHP.
إن كنت من مستخدمي نظام ويندوز فيمكنك تحميل الملف التنفيذي الخاص بتثبيت Composer وذلك من الرابط: https://getcomposer.org/، وتنصيب Composer في نفس المجلد الذي قمت بتثبيت php.exe فيه. (C:\wamp\bin\php\php5.5.12 مثلاً).
أما مستخدمو نظامي Linux و Mac فيمكنهم فتح الطرفية وكتابة الأمر التالي فيها:
curl -sS https://getcomposer.org/installer | php
سيقوم هذا الأمر بتحميل ملف composer.phar (phar تعني php archive) بواسطة الأداة curl، وللوصول إلى composer من أي مكان في حاسوبك يجب عليك نقل هذا الملف إلى المجلد /usr/bin/composer، وذلك بتنفيذ الأمر التالي في الطرفية:
sudo mv composer.phar /usr/bin/composer
للتحقق من وجود Composer يكفي الدخول إلى سطر الأوامر في ويندوز أو الطرفية في Linux و Mac وكتابة كلمة composer والضغط على زر الإدخال Enter. إن كان Composer مثبّتًا في جهازك ستظهر شاشة الترحيب التالية إضافة إلى جميع ا لأوامر المستخدمة في composer.
تطبيق عملي لاستخدام مكتبة Composer
سيبحث Composer عن الملف composer.json حيث سندرج جميع الاعتماديات التي نحتاج إليها في المشروع.
لننشئ مجلّدًا جديدًا بواسطة الأمر التالي:
mkdir composer_example
ادخل إلى المجلد:
cd composer_example
أنشئ ملف composer.json هنا، وأضف إليه ما يلي:
{
"require": {
"jdorn/sql-formatter": "1.3.*@dev"
}
}
هنا jdorn هو اسم صاحب الحزمة sql-formatter التي نرغب في تثبيتها ضمن المشروع.
ولكن قد تتسائل من أين سيأتي Composer بهذه الحزمة. في الواقع هناك موقع إلكتروني آخر هو Packagist يتضمّن جميع المكتبات الشائعة ويمكن تصفّحها من خلال الموقع.
مكتبة sql-formatter عبارة عن صنف php صغير الحجم يعمل على تنسيق عبارات SQL حيث يضبط الإزاحات في بداية العبارة تلقائيًا كما يدعم تلوين الكلمات المفتاحية.
بعد أن أعددنا ملف composer.json يمكننا تحميل وتنصيب الملفات المطلوبة في مجلد المشروع بواسطة الأمر:
composer install
سيتم تحميل جميع الملفات المطلوبة ومن ضمنها ملفات autoload إلى المجلد composer_example/vendor.
والآن أنشئ ملفًّا باسم index.php في المجلد composer_example واجلب فيه الملف autoload.php باستخدام الدالة require وبذلك سيتمّ تحميل جميع الاعتماديات في هذا الملف. إليك المثال التالي:
<?php
require "vendor/autoload.php";
$query = "SELECT count(*),`Column1`,`Testing`, `Testing Three` FROM `Table1`
WHERE Column1 = 'testing' AND ( (`Column2` = `Column3` OR Column4 >= NOW()) )
GROUP BY Column1 ORDER BY Column3 DESC LIMIT 5,10";
echo SqlFormatter::format($query);
?>
لاحظ مدى سهولة وسرعة التعامل مع الاعتماديات بواسطة Composer.
لننشئ مشروعًا آخر
لنفترض أننا نرغب في إضافة إطار عمل Codeigniter بواسطة Composer. لن نستخدم هذه المرّة الأمر composer install بل سنستخدم الأمر composer create-project لإنشاء مشروع جديد.
توجّه إلى موقع Packagist وابحث عن مكتبة Codeigniter، ثم حمّل نسخة من إطار العمل إلى مجلد المشروع الذي تعمل عليه:
composer create-project codeigniter/framework مجلد المشروع
بعد اكتمال العملية ستجد ملف composer.json في مجلد المشروع، ويمكن إضافة المزيد من الاعتماديات إلى مشروعك بواسطة هذا الملف. لنفترض أنّك ترغب في استخدام حزمة sql-formatter في مشروعك هذا. توجّه إلى ملف composer.json وعدّله ليصبح بالصورة التالية:
{
"description" : "A way to install CodeIgniter via composer",
"name" : "rogeriopradoj/codeigniter",
"license": "OSL-3.0",
"require": {
"php": ">=5.2.4",
"jdorn/sql-formatter": "1.3.*@dev"
}
}
ثمّ حدّث الاعتماديات بواسطة الأمر:
composer update
والآن إن كنت ترغب في رفع هذا المشروع إلى Github أو مشاركته مع أحد الأصدقاء، لن تكون بحاجة إلى إرسال مجلد vendor، بل يكفي أن ترسل الملف composer.json وسيكون بميسور صديقك تحميل جميع الاعتماديات المطلوبة والمستخدمة في المشروع.
عليك بتجربة composer، إذ تستخدمه معظم أطر عمل php المعروفة مثل Laravel، Symfony 2 و Yii إضافة إلى بعض حزم php الرائعة التابعة لـ Phpleague. فماذا تنتظر إذًا؟
ترجمة - وبتصرّف - للمقال Composer easy tutorial – php dependency management tool لصاحبه Arkaprava Majumder.
سنتعلم في هذا الدرس كيفية عمل مثلجات ببرنامج Photoshop باستعمال بعض التقنيات للحصول على نتيجة لذيذة: افتح مشروعًا جديدًا على Photoshop بالإعدادات التالية: الأبعاد: 2000x2500pixels.الدّقة: Resolution 720Dpi.نمط الألوان: Color Mode RVB8bit.وبأداة الطلاء (G) نملأ الخلفية باللون #e4e6e8: نأخذ أداة المستطيل بزوايا دائرية (U) مع شعاع بقيمة 50px ولون #e0b885 ثم نرسم الشكل التالي: بعد ذلك نفتح الصورة التالية في مشروع جديد ثم نذهب إلى القائمة: Menu > Edit > Define Pattern ثم إلى مشروعنا، نحدد طبقة الشكل المعين مؤخرا وإلى خصائص الدمج Blending Options الخاصة بها: لنحصل على حامل المثلجات: الآن نضغط الزر Ctrl مع تحديد الطبقة الخاصة بحامل المثلجات ثم ننشئ طبقة جديدة (Ctrl+Shift+N) وبأداة الفرشاة واللون 794d20# نرسم شكل كما في الصورة: بأداة الريشة (P) مع اللون الأصفر #fbd528 نرسم الشكل التالي: إلى خصائص الدمج Blending Options: في طبقة جديدة نضيف دائرة بيضاء اللون باستعمال الفرشاة (B): نضغط الزر Ctrl مع تحديد الطبقة الخاصة بالمثلجات (الشكل الأصفر)، نأخذ أداة الفرشاة (B) مع اللون الأصفر القاتم #fcb909 ونمرر على الجزء المحدد من اليمين نحو اليسار: دائما مع الجزء المحدد، ننشئ طبقة جديدة ونملأها باللون الأصفر #ffec39: بعد ذلك نذهب إلى: Menu > Filter > Noise > Add Noise ثم نخفض قيمة الشفافية الخاصة بالطبقة الأخيرة إلى 55%: الآن نضيف اشكال عشوائية –على شكل قطرات الماء-باستعمال أداة الفرشاة: إلى خصائص الدمج Blending Options: نضيف طبقة جديدة وبأداة الفرشاة نرسم خط عمودي أبيض اللون كما في الصورة: ثم إلى: Menu > Filter > Blur > Gaussian Blur نضيف قطرات ماء أخرى بنفس الطريقة السابقة، ثم بعض الظل للحامل: نضيف مثلجات بألوان أخرى لنحصل على الصورة النهائية لدرس اليوم: ترجمة -وبتصرّف- للمقال: Créer des Glaces avec Photoshop.