PHP Design Patterns
1.0.0
该存储库的目的是通过各种示例激发开发人员理解和使用设计模式。请考虑为任何模式添加示例,以帮助其他人更好地理解该模式。
请遵循指南来运行该项目。
git clone https://github.com/basherr/PHP-Design-Patterns.git
克隆存储库composer install
composer test
命令确保所有测试用例通过public/
文件夹并运行命令: php -S localhost:8000
查看routes.php 以测试任何特定模式示例。
如果您发现某些实现错误或模糊,请创建一个问题,让我们在学习设计模式的道路上互相帮助。
您的贡献可能会对社区产生非常好的影响,因此请尝试分享您过去能想到或经历过的所有可能的例子。
该存储库不基于任何框架,而是受到无框架的启发
存储库的代码结构如下:
app
bootstraps
public
stubs
tests
应用程序的生命周期如下:
public/index.php
作为加载boostrap/autoload.php
的整个应用程序的入口点bootstrap/autoload.php
处理HTTP
请求并将路由转发到bootstrap/routes.php
中定义的相关Controller method
。为了贡献并添加相关模式的真实世界示例,请遵循以下指南:
app/Patterns/{Type eg Creational, Behavioral or Structural}/{Pattern Name}/{Example Name}/your code
中创建一个文件夹unit tests
render
的方法创建Application.php
来描述用法。示例 Application.phpbootstraps/routes.php
中添加一个路由composer test
并确保所有测试都通过请随意贡献并创建拉取请求。
可用于创建测试的唯一控制台命令是:
php .bootstrapsconsole_autoload.php MyAwesomeTestName
请创建问题或加入 Discord 进行任何讨论。
除非另有说明,所有代码库均获得 MIT 许可。