php设计模式的六大原则(五):依赖倒置原则
程序员文章站
2022-04-20 10:41:00
...
依赖倒置原则(DSP)
run(); }}class Client{ public static function doing(){ $driver = new Driver(); $driver -> drive( new Benz() ); }}Client :: doing();// 那么如果司机想开宝马呢?,是不是就要修改Driver了,这就违反了开闭原则了,怎么能只在Client添加代码就让宝马车也会开呢?interface ICar{ //定义一个汽车接口 public function run();}class BMW implements ICar{ public function run(){ return "BMW is runing !!!"; }}class Benz implements ICar{ public function run(){ return "Benz is runing !!!"; }}interface IDriver{ //定义一个司机接口,以防以后有A照,B照,C照的 public function drive(ICar $car);}class Driver implements IDriver{ public function drive(ICar $car){ echo "
" . $car -> run(); }}class Client{ public static function doing(){ $driver = new Driver(); $driver -> drive( new BMW() ); //开宝马 $driver -> drive( new Benz() ); //开奔驰 . . . . }}Client :: doing();?>
这么简单,学会了吧?依赖倒置原则核心一句话:面向接口编程。
上一篇: ps试用期7天过了怎么破解
推荐阅读
-
PHP面向对象五大原则之依赖倒置原则(DIP)详解
-
20.7.17 笔记算数运算符 复合运算符重载 比较运算重载 多态 设计原则 类的单一职责 依赖倒置 组合复用原则 里氏替换 迪米特法则 矩阵转置原理
-
六大设计原则(三)DIP依赖倒置原则
-
设计模式的七大原则(3) --依赖倒置原则
-
设计模式:面向对象设计的六大原则 (绝对详细)
-
软件设计中的六大原则-依赖倒置原则
-
S.O.L.I.D: PHP 面向对象设计的五个基准原则
-
PHP 进阶篇:面向对象的设计原则,自动加载类,类型提示,traits,命名空间,spl的使用,反射的使用,php常用设计模式 (麦子学员 第三阶段)
-
设计模式的五大原则
-
PHP面向对象五大原则之依赖倒置原则(DIP)详解