الهدف من المستودع هو إلهام المطورين لفهم أنماط التصميم واستخدامها من خلال أمثلة مختلفة. يرجى النظر في إضافة مثال لأي نمط قد يساعد الآخرين على فهم النمط جيدًا.
يرجى اتباع الإرشادات لتشغيل هذا المشروع.
git clone https://github.com/basherr/PHP-Design-Patterns.git
composer install
composer test
public/
وقم بتشغيل الأمر: php -S localhost:8000
قم بمراجعة ملف Routes.php لاختبار أي مثال لنمط محدد.
إذا وجدت أن بعض عمليات التنفيذ خاطئة أو غامضة، فيرجى إنشاء مشكلة ودعنا نساعد بعضنا البعض في مسار تعلم أنماط التصميم .
قد يكون لمساهمتك تأثير جيد جدًا على المجتمع، لذا حاول مشاركة كل الأمثلة الممكنة التي يمكنك التفكير فيها أو تجربتها في الماضي.
لا يعتمد المستودع على أي إطار عمل ولكنه مستوحى من No Framework
هيكل التعليمات البرمجية للمستودع هو كما يلي:
app
bootstraps
public
stubs
tests
دورة حياة التطبيق هي كما يلي:
public/index.php
كنقطة دخول للتطبيق بأكمله الذي يقوم بتحميل boostrap/autoload.php
bootstrap/autoload.php
بمعالجة طلب HTTP
وإعادة توجيه المسار إلى Controller method
ذات الصلة المحددة في bootstrap/routes.php
.من أجل المساهمة وإضافة مثال حقيقي للنمط ذي الصلة، يرجى اتباع الإرشادات:
app/Patterns/{Type eg Creational, Behavioral or Structural}/{Pattern Name}/{Example Name}/your code
unit tests
Application.php
باستخدام طريقة تسمى render
لوصف الاستخدام. مثال على التطبيق.phpbootstraps/routes.php
composer test
والتأكد من اجتياز جميع الاختباراتلا تتردد في المساهمة وإنشاء طلبات السحب.
أمر وحدة التحكم الوحيد المتاح لإنشاء الاختبارات هو:
php .bootstrapsconsole_autoload.php MyAwesomeTestName
يرجى إنشاء مشكلة أو الانضمام إلى Discord لأي مناقشة.
جميع قواعد التعليمات البرمجية مرخصة من معهد ماساتشوستس للتكنولوجيا ما لم ينص على خلاف ذلك.