00:00
我们在对简单工厂模式做一点额外的补充说明,就是简单简单工厂模式呢,它也也叫这个静态工厂模式,就是简单工厂模式呢,它也叫静态工厂模式,呃,怎么回事呢?就是有些有些书上呢,或者在有些代码里面呢,他直接把这个简单。这个工厂类的create就是生产这个对象实例的方法,直接做成静态的,你比如说。大家看我这样改哈,就是简单。简单工厂模式。工厂模式也叫。也叫什么呢?也是也叫静态,静态工厂。工厂模式。呃,怎么个。怎么说法呢,我们来看就是如果我们把这个方法写成这个静态的,那它这个调用方式呢,可以这样做一个改进。比如说我在这。
01:10
写个creates。披萨二,然后呢,这边写一个static。13体格,那这帮这是我们使用它,它当然仍然仍然还是简单工程模式啊,只是呢,它这个方法变成静态的了,它变成静态的话呢,我们在调用的时候呢,会更方便一些,怎么写呢,大家看那这个时候order。它在调用的时候,这个simple factory就没有必要再去设置了,直接拿来用就可以了,你比如说我给大家稍微的改进一下。我我这样子啊,我偷个懒,我我想想怎么怎么改一下就可以了,Order,比如说我们写新的类,大家看我怎么用。对,叫做order。注意听order pizza。
02:01
二好吧,Order披萨二。到了这个地方呢,我就用那个静态的,就是创静态的创建我们披萨的那个方法来完成,你看我怎么改,呃这样子的,首先这个方法。就是获取到用户想得到怎样的披萨种类,这个方法呢,仍然是需要的,这个没有问题,对吧,我格式化一下,然后呢,我们再来看。我们再来看这个地方,好在这儿。就是site factory就没有必要了,这个这个披萨还是可以的,那么我们在这做一个改进,怎么改好,同学们看。对,我这稍微改发一下,到这个地方我们就叫order披萨二那工厂,因为你是静态的,那那显然就没有必要再传进来了,这地方也没必要再用set factory了,那方法就变成这个样子了。
03:02
变成这样子,你看啊,我把这一段核心代码拿过来。看到没有?这个地方不就是在完成一个订购吗?那完成订购我要做的事情只需要做这么一件事就可以了。上面。我们再定一个string order type。对吧,是一个字符串,然后因为它是静态方法,所以说我们直接用simple。factory.create2就可以了,其代码不需要变化。其他代码必须要变变化,那这样子呢,比刚才那一个更简单,就看从从代码形式上来说更简单,但为什么我但是为什么我这在讲这个simple factory的时候,我没有没有用静态呢?就是因为我们这个简单工程呢,他在创建这个披萨的时候,可能可能有好好些形式,对不对,所以说他也有可能是有有不同的创建披萨的形式,那么我分别给每一个订购地方,给他一个工厂,这这也是可以的,知道吧,就看你的需求是怎么样子的了。
04:13
OK,那现在我们来用这这个没有必要测试了,应该是没有问题的。看啊,Order披萨二。呃,我们在这改一改,看看能不能用,那如果是这种方式用的话呢,那我们代码就变成这样子了,6ORDER。披萨二就可以了,是不是因为这个order披萨二里面呢,我们是按照这个静态方法的方式来调用并订购我们披萨的,来用一下吧。看行不行,跑起来。好,这是静态方法的,那现在呢,我们来写一个paper。胡椒披萨,这是用的简单工厂模式二的一种方式,就是静态方法来完成的。然后呢,切。
05:00
EE好奶酪也没有问题,我们再来一个前面讲的green。Greek,希腊披萨,我们再写一个没有的哈,退出了。就是简单工程模式,因为没有hello这种披萨就推出了,好同学们,那关于这这点小小的补充呢,就给大家说到这儿,好,下面呢,我们就准备讲工厂。模式,工厂模式的第二,下一种叫工厂方法模式,待会儿我们来进行这个讲解。
我来说两句