摘要: 1 <?php 2 3 interface Renderable 4 { 5 public function render(); 6 } 7 8 9 class Form implements Renderable 10 { 11 private $elements; 12 13 /** 14 * 阅读全文
posted @ 2017-01-08 20:45 _logan 阅读(181) 评论(0) 推荐(0) 编辑
摘要: 1 <?php 2 /** 3 * 我们以汽车制造厂生产汽车为例,Vehicle 是抽象生产类,Motorcycle 和 Car 是具体实现子类, 4 * 制造汽车分为生产和组装两部分完成,这意味着我们要在制造方法 manufacture 中实现生产和组装工作, 5 * 这里我们将这一实现过程分离出 阅读全文
posted @ 2017-01-08 19:58 _logan 阅读(121) 评论(0) 推荐(0) 编辑
摘要: 1 <?php 2 3 /** 4 * 观察者接口 5 */ 6 interface ObserverInterface 7 { 8 public function update($params); 9 } 10 11 /** 12 * 被观察者接口 13 */ 14 interface BeenO 阅读全文
posted @ 2017-01-08 19:40 _logan 阅读(130) 评论(0) 推荐(0) 编辑
摘要: 1 <?php 2 3 class Registry 4 { 5 private static $arr; 6 7 public static function get($name) 8 { 9 return self::$arr[$name]; 10 } 11 12 public static f 阅读全文
posted @ 2017-01-08 17:41 _logan 阅读(65) 评论(0) 推荐(0) 编辑
摘要: 1 <?php 2 3 /** 4 * 模板方法模式又叫模板模式,该模式在一个方法中定义一个算法的骨架,而将一些步骤延迟到子类中。 5 * 模板方法使得子类可以在不改变算法结构的情况下,重新定义算法中的某些步骤。 6 * 7 * 由于模板定义了子类的行为,所以是行为型模式 8 */ 9 10 abs 阅读全文
posted @ 2017-01-08 15:08 _logan 阅读(139) 评论(0) 推荐(0) 编辑
摘要: 1 <?php 2 3 /** 4 * 门面模式(Facade)又称外观模式,用于为子系统中的一组接口提供一个一致的界面。 5 * 门面模式定义了一个高层接口,这个接口使得子系统更加容易使用:引入门面角色之后, 6 * 用户只需要直接与门面角色交互,用户与子系统之间的复杂关系由门面角色来实现,从而降 阅读全文
posted @ 2017-01-08 14:45 _logan 阅读(107) 评论(0) 推荐(0) 编辑