# design-patterns-laravel **Repository Path**: shenlink/design-patterns-laravel ## Basic Information - **Project Name**: design-patterns-laravel - **Description**: 设计模式PHP版,使用laravel框架开发 - **Primary Language**: PHP - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-05-15 - **Last Updated**: 2025-06-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Laravel 设计模式实践项目 本项目基于空的 Laravel 项目,用于实现常见的 **设计模式(Design Patterns)**,以展示如何在 PHP 中应用这些模式。 ## 📚 简介 本项目旨在帮助开发者理解并实践常用的 **设计模式(如工厂模式、单例模式、策略模式、观察者模式等)** 在 PHP 中的使用方式。该项目灵感来源于 [设计模式 Java 实现](https://github.com/quanke/design-pattern-java),并在此基础上进行了 PHP 版本的实现,同时也做了一些扩展 ## 🧩 支持的设计模式 - ✅ 简单工厂模式(Simple Factory Pattern) - ✅ 工厂方法模式(Factory Method Pattern) - ✅ 抽象工厂模式(Abstract Factory Pattern) - ✅ 单例模式(Singleton Pattern) - ✅ 建造者模式(Builder Pattern) - ✅ 原型模式(Prototype Pattern) - ✅ 适配器模式(Adapter Pattern) - ✅ 桥接模式(Bridge Pattern) - ✅ 组合模式(Composite Pattern) - ✅ 装饰器模式(Decorator Pattern) - ✅ 外观模式(Facade Pattern) - ✅ 享元模式(Flyweight Pattern) - ✅ 代理模式(Proxy Pattern) - ✅ 观察者模式(Observer Pattern) - ✅ 策略模式(Strategy Pattern) - ✅ 模板方法模式(Template Method Pattern) - ✅ 责任链模式(Chain of Responsibility Pattern) - ✅ 命令模式(Command Pattern) - ✅ 解释器模式(Interpreter Pattern) - ✅ 迭代器模式(Iterator Pattern) - ✅ 中介者模式(Mediator Pattern) - ✅ 备忘录模式(Memento Pattern) - ✅ 状态模式(State Pattern) - ✅ 访问者模式(Visitor Pattern) > 每个模式位于 `app/DesignPatterns` 目录下,并且在tests目录下都有详细的测试用例。 ## 🛠️ 安装 1. 克隆项目到本地: - gitee ```bash git clone https://gitee.com/shenlink/design-patterns-laravel.git cd design-patterns-laravel ``` - github ```bash git clone https://github.com/shenlink/design-patterns-laravel.git cd design-patterns-laravel ``` 2. 安装依赖: ```bash composer install ``` 3. 配置 `.env` 文件: ```bash cp .env.example .env ``` ## 📁 项目结构说明 ```plaintext . ├── app/ │ └── DesignPatterns/ # 存放各类设计模式实现 │ ├── Factory/ │ ├── Singleton/ │ ├── Strategy/ │ └── ... ├── tests/ # 单元测试 └── README.md # 当前文档 ``` ## 🧪 测试 运行测试: ```bash php artisan test ``` ## 📄 许可证 本项目采用 MIT 许可证。