设计模式-Builder模式
什么是Builder模式?
盖房子一般都是先盖好主体,然后再对里面进行一些细节的装修等。
我们一般写文章也一样,一般都会先构思好文章的主题,写好大标题小标题,然后再填充每一部分的内容。
所以Builder模式也是类似的思想,就是先用一个抽象类定义好大标题,都要写哪些内容。
然后一个Director类对抽象类中定义的方法的顺序进一步做出规定。
那么你写文章不仅知道需要写哪些内容,同样也知道应该先写什么,再写什么。
当然实现抽象类的具体类就是你自己需要实现的,相当于不同人写的毕业设计论文,都需要包含那几个部分,但是每个人写的又不能完全一样。当然你也可以在自己的具体实现类里面添加抽象类中没有定义的方法。
UML类图
这个模式感觉是和前面的模板模式很像,确实,可以结合前面的模板模式理解这个模式。
总结
设计模式里面没有什么问题是加一层不能解决的。
所以为了实现低耦合,将所有具体实现抽象出一个抽象类,这样在使用的时候就可以直接通过抽象类声明具体实现,修改的话只需要修改具体实现,而不需要修改调用类。
但是规定了抽象方法,那还需要一些共有的顺序或者模板怎么办呢?
再加一层。
在这一层里面使用抽象类中的方法规定顺序。
所以,在Main函数里面只需要使用最后这个规定了顺序的类就可以了将具体类注入Director类中来使用。
总之就是封装封装再封装,让自己的代码修改时候避免到处修改,让自己的代码可以多次复用。