摘要: 判断代码的好坏,我们有自己的标准:高内聚,低耦合。为了解决这一问题,php中有许多优秀的设计模式,比如工厂模式,单例模式。 而在代码中体现出来的设计模式,就如依赖注入和控制反转。 那什么是依赖注入? 简单来说,就是把A类所依赖的B类C类等以属性或者构造函数等方式注入A类而不是直接在A类中实例化。 一 阅读全文
posted @ 2018-10-08 18:11 酸suan 阅读(940) 评论(1) 推荐(0) 编辑
摘要: PHP命名空间 可以更好地组织代码,与Java中的包类似。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 运行结果 总结:通过以上代码,可以看到,在不同的命名空间下,可以有相同的类名或者方法名。 类自动载入 随着PHP项目的变大,会导致一个PHP文件 阅读全文
posted @ 2018-10-08 17:59 酸suan 阅读(172) 评论(0) 推荐(0) 编辑
摘要: <?php//__get()//__set()当对象中属性不存在时调用该魔术方法//__call()当对象中方法不存在时//__callStatic()静态方法//__string()当对象不能转换成字符串时使用__string()//__invoke()对象不能直接当成一个函数使用//工厂模式,是 阅读全文
posted @ 2018-10-08 17:10 酸suan 阅读(683) 评论(0) 推荐(0) 编辑
摘要: 策略模式是对象的行为模式,用意是对一组算法的封装。动态的选择需要的算法并使用。 策略模式指的是程序中涉及决策控制的一种模式。策略模式功能非常强大,因为这个设计模式本身的核心思想就是面向对象编程的多形性思想。 策略模式的三个角色: 1.抽象策略角色 2.具体策略角色 3.环境角色(对抽象策略角色的引用 阅读全文
posted @ 2018-10-08 17:09 酸suan 阅读(184) 评论(0) 推荐(0) 编辑
摘要: <?php class single{ static public $db; private function __construct(){ }; static function getinstance(){ if(!self::$db) self::$bd = new self(); return 阅读全文
posted @ 2018-10-08 15:13 酸suan 阅读(564) 评论(0) 推荐(0) 编辑
摘要: 一个类只有一个对象实例 1、含义 作为对象的创建模式,单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统全局地提供这个实例。它不会创建实例副本,而是会向单例类内部存储的实例返回一个引用。 2、单例模式的三个要点: (1). 需要一个保存类的唯一实例的静态成员变量: (2). 构造函数和克隆 阅读全文
posted @ 2018-10-08 12:17 酸suan 阅读(4424) 评论(0) 推荐(0) 编辑
摘要: 所谓工厂模式和生产有关。生产什么呢?生产出来的是一个实例对象。通过什么设备生产?通过一个工厂类生产simpleFactoty。怎么生产呢?工厂类调用自身静态方法来生产对象实例static function woman.工厂类静态方法必须返回一个对象. class simpleFactoty{ sta 阅读全文
posted @ 2018-10-08 11:30 酸suan 阅读(4567) 评论(0) 推荐(0) 编辑