以前光对设计模式有耳闻,一直没有实践的机会,期间也看过一些博客,但是一直不知道怎么使用
趁着最近项目不忙,可以稍微写一下demo来强化理解
- 练习时候思考其应用场景
- 配合composer了解phpunit用法
- 学习写测试用例
- 📘 抽象工厂模式 (Abstract Factory)
- 📘 建造者模式 (Builder)
- 📘 工厂方法模式 (Factory Method)
- 🈲 多例模式 (Multiton)
- 📘 对象池模式 (Pool)
- 📘 原型模式 (Prototype)
- 📘 简单工厂模式 (Simple Factory)
- 🈲 单例模式 (Singleton)
- 📘 静态工厂模式 (Static Factory)
- 📙 适配器模式 (Adapter)
- 📙 桥梁模式 (Bridge)
- 📙 组合模式 (Composite)
- 📙 数据映射模式 (Data Mapper)
- 📙 装饰模式 (Decorator)
- 📙 依赖注入模式 (Dependency Injection)
- 📙 门面模式 (Facade)
- 📙 流接口模式 (Fluent Interface)
- 📙 享元模式 (Flyweight)
- 📙 代理模式 (Proxy)
- 📙 注册模式 (Registry)
- 📗 责任链模式 (Chain Of Responsibilities)
- 📗 命令行模式 (Command)
- 📗 迭代器模式 (Iterator)
- 📗 中介者模式 (Mediator)
- 📗 备忘录模式 (Memento)
- 📗 空对象模式 (Null Object)
- 📗 观察者模式 (Observer)
- 📗 规格模式 (Specification)
- 📗 状态模式 (State)
- 📗 策略模式 (Strategy)
- 📗 模板方法模式 (Template Method)
- 📗 访问者模式 (Visitor)
php 7.3
composer 1.7.3
phpunit 8.2.4
在根目录运行 composer install
用例在每个设计模式对应的 Test
文件夹
vendor/bin/phpunit Behavioral/Visitor/Tests/VisitorTest.php
PHPUnit Pretty Result Printer 0.26.2 by Codedungeon and contributors.
==> Configuration: ~/code/php/DesignPatterns/vendor/codedungeon/phpunit-result-printer/src/phpunit-printer.yml
PHPUnit 8.2.4 by Sebastian Bergmann and contributors.
==> VisitorTest ✔ ✔
Time: 26 ms, Memory: 4.00 MB