
天启矢量
php中对象的生成
>>
完整版
本帖最后由 天启矢量 于 2015-4-7 11:06 编辑
对象的生成思考
创建对象是一件棘手的事情。利用多态带来的灵活性(在运行时切换不同的具体实现),我们可以采用多种面向对象设计方案来处理优美且简洁的抽象类。为了达到这样的灵活性,我们必须仔细考虑生成对象的策略。
一. 实例化的思考
对象的创建有时会成为面向对象设计的一个薄弱环节。我们在策略模式一张提到过,面向对象有一个原则:“针对接口编程,而不是针对实现编程”。所以,我们鼓励使用抽象类或接口,这使代码更具灵活性,可以让你在运行时使用从不同的具体子类中实例化对象。但这样做也有副作用,那就是对象的实例化被延迟了。
实例化思考第一版:类切换的思考
五个文件,Person.class.php , Student.class.php , Teacher.class.php , Lead.class.php , lead.php。
问题:Lead类里直接实例化了Student类或者Teacher类,代码的灵活性受到了限制。也就是说,Student类和Teacher类在切换上不够灵活。