29
ج م ر مب دوات ا ض ع ب ب ف ي ر ع تPHP صدر م ل ا ة ح و ت ف م ل ا رة ح ل ا ات, ي ج م ر لب م ا ل عا ي ف ة ع م7 ش للد ا ا م. خ

PHP Developer Tools - Arabic

Embed Size (px)

DESCRIPTION

I present this in the FLOSS conference in Aleppo University 2003

Citation preview

Page 1: PHP Developer Tools - Arabic

مبرمج أدوات ببعض تعريفPHP

الحرة البرمجيات عالم فيالمصدر المفتوحة

الشمعة. خالد م

Page 2: PHP Developer Tools - Arabic

العرضالتقديمي هذا نقاط

العربية PHPمشروع • واللغةالمصدرية CVSنظام • الشيفرة وإدارة لحفظالفحص PHPUnitsنظام • عمليات ألتمتة

واالختبارتوثيق PHPDocumentorنظام • عملية ألتمتة

المصدرية الشيفرةوتوصيات • خالصة

Page 3: PHP Developer Tools - Arabic

العربية PHPمشروع واللغة

الوظائف • من مجموعة تتضمن المصدر مفتوحة مكتبة : الحصر ال المثال سبيل على منها العربية باللغة الخاصةما وتحويل اآللي والتلخيص الكلمة ساق بداللة البحثما اللفظية والترجمة والميالدي الهجري التأريخين بين : . المزيد على لإلطالع واإلنجليزية العربية الكلمات بين

http://www.ar-php.org

على 2006-2007• والنشر البرمجي phpclasses.orgالبناء

•2008 :PHP5 ، sourceforge.org األداء تحسين ،

PEAR

Page 4: PHP Developer Tools - Arabic

إلى اإلنضمام PEARشروط

على • المصدرية الشيفرة وإدارة حفظ ضرورةالويب CVSمخدم شبكة على متاح

(Sourceforge.net)

مزايا • كافة باختبار يقوم برنامج إلحاق ضرورةمؤتمت ) آلي بشكل المكتبة (PHPUnitوخدمات

المصدرية • للشيفرة معياري توثيق توفير ضرورةإضافتها ) المراد بالمكتبة (phpDocumentorالخاصة

Page 5: PHP Developer Tools - Arabic

CVSمخدم

Page 6: PHP Developer Tools - Arabic

نظام هو ؟CVSما

المتزامنة • اإلصدارات لحفظ CVSنظاممفتوح مجاني نظام هو المصدرية الشيفرة

. الزبون / المخدم هيكلية على قائم المصدر

للتعديالت • الدمج آلية النظام هذا يستخدمنموذج بعكس مطورين، عدة يجريها التيبإجراء فقط واحد لمطور يسمح الذي القفل

. مرة كل في التعديالت

Page 7: PHP Developer Tools - Arabic

المفتوحة CVSنظام والمشاريعالمصدر

في • ما يوما للمساهمة تطمح مبرمجا كنت إنلك البد المصدر، مفتوح برمجي مشروع أي

مخدم مع التعامل طريقة تتقن أن CVSمنالشيفرة استخراج على قادرا لتكون

ذلك بعد فتقوم عليها، والحصول المصدريةتلك إيداع ثم ومن إليها، تعديالتك بإضافةمكنز في مجددا أضفتها التي التعديالت

لتصبح للمشروع، األصلية المصدرية الشيفرة. لآلخرين متاحة بالتالي وتكون منه جزءا

Page 8: PHP Developer Tools - Arabic

نظام استخدام يمكن ؟CVSأين

عدة • من مؤلف مشروع أي فإن المبدأ ناحية مننظام خدمات من االستفادة يمكنه : CVSملفات مثل

. التوثيق مشاريع أو الويب مواقع أو البرمجيات تطوير

نظام • مزايا فقط CVSتطبق النصية الملفات علىمثل:

HTMLملفات • )RTF )Rich Text Formatملفات •مثل • المصدرية الشيفرة Javaأو Cأو PHPملفاتSQLو XMLملفات •

Page 9: PHP Developer Tools - Arabic

نظام (1؟ )CVSكيفيعمل

مكنز • .repositoryيوجد ما مخدم علىعمل checkoutيستخرج • نسخة المطورين من كل

working copy. المحلية أنظمتهم علىنسخة • على التعديالت بإجراء المطورون يقوم

. المعتادة بطريقتهم تخصهم التي المحلية العملبه، • يقومون الذي التعديل على العمل إنتهاء عند

تحديث عملية إجراء أوال لنسخة updateعليهمالمطورين تعديالت فيها لتدمج لديهم العمل

فترة خالل المكنز في إيداعها تم التي اآلخرين. التعديل على العمل

Page 10: PHP Developer Tools - Arabic

نظام (2؟ )CVSكيفيعمل

بنجاح • التحديث عملية وإنجاز التعديالت إتمام بعدبإيداع المطور بها commitيقوم قام التي التعديالت

. للمشروع األصلية النسخة في دمجها ليتم المكنز في

بشكل • البرمجي السطر ذات بتعديل مطورين قام إنويتلقى اإليداع، عملية ستفشل حينها مستقل،تفيد مالحظة اإليداع يحاول الذي األخير المطور

تعارض حالة حل conflictبحدوث حينها عليه ويتوجب ،على قادرا يكون أن قبل يدوي بشكل التعارض هذا

. جديد من تعديالته إيداع

Page 11: PHP Developer Tools - Arabic

نظام استخدام فوائد هي ماCVS( 1؟)

ذات • على مستقل بشكل بالعمل مطورين لعدة يسمحالمكنز في تعديالتهم دمج الحقا ليتم الملفات، مجموعة

المركزي.

هي • أين و التعديالت، بإجراء قام من بتتبع لك يسمح . معرفة يمكنك كما إجراؤها تم متى و التعديالت، تلكبإضافة المطورون إلتزم إن التعديالت تلك أجريت لماذا

. بها يقومون إيداع عملية كل مع مفيدة تعليقات

من • البرمجية تطوير إلثبات المحكمة في قوي دليل. تطويرها مراحل عرض خالل

Page 12: PHP Developer Tools - Arabic

نظام استخدام فوائد هي ماCVS( 2؟)

مركزي، • مكنز ضمن الملفات بحفظ النظام هذا يقومالمطورين أنظمة على موزعة احتياطية نسخ توفير مع ( من استخرجوها أن سبق التي العمل نسخ المحلية

المكنز(.

على • العمل من جغرافيا المنتشرة العمل فرق تمكين ( المفتوحة المشاريع حال هي كما المشروع ذات

المصدر(.

النظام، • استخدام تاريخ من بدءا اإلصدارات كافة حفظنتخلص حيث االحتياطي النسخ أسلوب عكس على

. فترة بعد القديمة النسخ من عادة

Page 13: PHP Developer Tools - Arabic

نظام استخدام فوائد هي ماCVS( 3؟)

المشروع • تطور مراحل يوضح تقرير توليد إمكانية. التطوير عملية فعالية الستقراء الزمن عبر

التي • التعديالت من أي عن التراجع إمكانية توفيرحالة استرجاع و بسهولة زمنية فترة أي خالل تمت

. معين تاريخ قبل كانت كما الملفات

االتصال • نطاق عرض استخدام في االقتصادالمخدم على التخزين ومساحة المتوفر الشبكياإلصدار إلى نسبة التعديالت حفظ خالل من

. فقط السابق

Page 14: PHP Developer Tools - Arabic

نظام به يقوم ال !CVSما

نظام • يعتبر أعضاء CVSال بين لالتصال وسيلة. الجماعي للعمل بديال وليس البرمجي، الفريق

نظام • يعتبر األخطاء CVSال بتتبع خاصا نظاما. إصالحها عملية ومتابعة

نظام • يوفر الشيفرة CVSال لفحص أدوات أي. وإختبارها البرمجية

Page 15: PHP Developer Tools - Arabic

عمل إطارPHPUnit ألتمتة

الفحص واالختبار

Page 16: PHP Developer Tools - Arabic

الفحص عمليات ضرورةواالختبار

الوقوع • أن تماما يعلم البرمجة مارس من كل إن. منه مفر ال أمر هو األخطاء في

لتفحص • مسبقا يخطط أن المحترف المبرمج علىمن يكتبه ما اختبار على والمواظبة األخطاء

لألخطاء مبكر اصطياد وراء سعيا برمجية شيفراتكلفة من ويقلل اكتشافها فرص من يعزز مما

إصالحها.األركان • من واحدا تلك االختبار عمليات تعتبر

ال التي الجودة وضبط مراقبة لعمليات األساسية. االحتراف عالم في عنها غنى

Page 17: PHP Developer Tools - Arabic

برنامج هو ؟PHPUnitما

المبرمج • يساعد االستخدام وسهل بسيط عمل إطارالمؤتمتة واالختبار الفحص عمليات وتنفيذ بناء على

. البرمجية للوحدات

برنامج • مكتبة PHPUnitإن عائلة من فرد ، PEARهوتستخدمه، الذي المخدم على متوفر يكن لم فإنالتعليمتين تنفيذ خالل من ببساطة تنصيبه يمكنك

: األوامر سطر في التاليتين

pear channel-discover pear.phpunit.de

pear install phpunit/PHPUnit

Page 18: PHP Developer Tools - Arabic

PHPUnit المفتوحة والمشاريعالمصدر

برمجية • بأي المؤتمتة االختبارات شيفرات إلحاق إنالتحقق من المستخدم تمكن المصدر مفتوحة حرةويمنحه منصته على البرمجية تلك عمل صحة منالمعني العمل فريق كون بها الثقة من مزيداالمتعارف الجودة ضمان إجراءات يتبع بتطويرها

عليها.

يساعد • المؤتمتة االختبارات هذه مثل توفر فائدة إنما برمجية تطوير أو تعديل يحاول من كل أيضالم بها قام التي التغييرات أن من التأكد على. البرمجية أرجاء بقية في خلل أي ظهور في تتسبب

Page 19: PHP Developer Tools - Arabic

(1؟ )PHPUnitكيفيعمل

المؤتمتة • االختبارات وبناء تصميم عملية تبدو قدفبناء خاطئ، االنطباع هذا لكن للوقت، مستهلكة

عمل إطار باستخدام جديد ال PHPUnitاختباركما الدقائق، من عشرات بضع من أكثر يستغرق

. ثوان في يتم ذاته االختبار تنفيذ أن

Page 20: PHP Developer Tools - Arabic

كيفيعمل PHPUnit( 2؟)

Page 21: PHP Developer Tools - Arabic

(3؟ )PHPUnitكيفيعمل

Page 22: PHP Developer Tools - Arabic

برنامج phpDocumentor

الشيفرة لتوثيقالمصدرية

Page 23: PHP Developer Tools - Arabic

برنامج هو ؟phpDocumentorما

سمات • أهم من واحدا والوافي المتكامل التوثيق يعدأخرى جهة من لكنه البرمجي، العمل في االحترافيةمعظم تصيب التي المهام من واحد أنه على يصنفالذي الوقت من الكثير يستهلك كونه بالملل المبرمجينعلى وجب لذا البرمجة، محبوبتهم عن بعيدا يصرفشغف بين ما وسطا حال يجد أن المحترف المبرمج

. التوثيق ورصانة البرمجةعلى phpDocumentorيهدف • المبرمجين مساعدة إلى

يكتبونه مما إنطالقا آلي شبه بشكل معياري توثيق توليدالمصدرية شيفراتهم ثنايا بين وتعليقات مالحظات منالمالحظات تلك كتابة في معينة طريقة إتباعهم شريطة

والتعليقات

Page 24: PHP Developer Tools - Arabic

(1؟ )phpDocumentorكيفيعمل

Page 25: PHP Developer Tools - Arabic

كيفيعمل phpDocumentor

)2(

Page 26: PHP Developer Tools - Arabic

(3؟ )phpDocumentorكيفيعمل

phpdoc -o HTML:Smarty:PHP -d ArPHP -t Docs

phpdoc -o CHM:default:default -d ArPHP -t Docs

phpdoc -o PDF:default:default -d ArPHP -t Docs

-f Filename

-ti Title

Page 27: PHP Developer Tools - Arabic

الناتج التوثيق عن مثال

Page 28: PHP Developer Tools - Arabic

وتوصيات خالصة

عمليات • من كل في المساعدة باألدوات التعريف إنوتوثيق االختبارات وأتمتة المصدرية الشيفرة إدارةإتقان عن أهمية تقل ال مسألة هي المصدرية الشيفرة

. ذاتها المستخدمة البرمجة لغةوالمساهمة • الجماعي العمل ومتطلبات االحتراف إن

تتطلب المصدر المفتوحة الحرة البرمجيات فيالتحليل موهبة صقل بمجرد تنحصر ال مهارات

والبرمجة.المتبع • السياق إلى األدوات هذه مثل تضاف أن أرى لذا

من كوادرنا تؤهل التي التعليمية المناهج فيالمبرمجين.

Page 29: PHP Developer Tools - Arabic

لحضوركم شكراwww.ar-php.org