จุดประสงค์ของพื้นที่เก็บข้อมูลคือการสร้างแรงบันดาลใจให้นักพัฒนาเข้าใจและใช้รูปแบบการออกแบบผ่านตัวอย่างต่างๆ โปรดพิจารณาเพิ่มตัวอย่างสำหรับรูปแบบใดๆ ที่อาจช่วยให้ผู้อื่นเข้าใจรูปแบบนั้นได้ดี
โปรดปฏิบัติตามแนวทางเพื่อดำเนินโครงการนี้
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
เพื่ออธิบายการใช้งาน ตัวอย่าง Application.phpbootstraps/routes.php
composer test
และตรวจสอบให้แน่ใจว่าการทดสอบทั้งหมดผ่านการทดสอบโปรดมีส่วนร่วมและสร้างคำขอดึง
คำสั่งคอนโซลเดียวที่ใช้ได้สำหรับการสร้างการทดสอบคือ:
php .bootstrapsconsole_autoload.php MyAwesomeTestName
กรุณาสร้างปัญหาหรือเข้าร่วม Discord เพื่อการสนทนาใดๆ
โค้ดเบสทั้งหมดได้ รับอนุญาตจาก MIT เว้นแต่จะระบุไว้เป็นอย่างอื่น