这里讲的有问题。工厂模式的定义『定义一个用于创建对象的接口,让子类决定实例化哪一个类;工厂方法使一个类的实例化延迟到其子类』。老师这部分讲到了后面部分的“延迟到其子类”,然而子类决定实例化哪一个类就需要传入参数。比如有需要制造的产品 class product1 和 class product2 ,则工厂类要做的是在输入参数里面传入这个类的名字,然后在类内部方法createProduct里面根据入参来实例化类。
2017-01-19
挺好的,很多框架的核心思想就是课里讲的,听不懂的去看看一些框架的源码,thinkPHP,laravel,这些,会有感触的
2017-01-11
已采纳回答 / 山谷里的小水泡0
如果不用观察者的话就需要在那个函数里一直加代码,各种逻辑混合在一起。但是用观察这就可以不修改原来的代码,只是增加新类和实例,在项目中逻辑更清楚。可扩展行将会更好,也方便测试。修改代码往往会带入新的bug。
2017-01-10