才看了一下工厂模式和建造模式,感觉无非就是要创建一个对象,干嘛要那么麻烦,创建个对象也就一行代码的事,那两个模式却要好几个类去创建,真心不懂了,求哪位大侠详解一下why? 他们的优点到底在哪里?
工厂模式 建造模式
------解决方案--------------------
设计模式本来就是把简单的问题复杂化,其实最终的目的无非就是解耦合,要弄清除设计模式为什么要这么做,最好先看看面向对象设计的几个原则:
单一职能原则,开闭原则,里氏替换原则,依赖倒置原则以及接口隔离原则.懂得了为什么要运用这几个原则之后,再回头看设计模式,无非就是遵循这些原则,让程序解耦合,让程序封装的更好,让类自己干好自己的事情而已
------解决方案--------------------
使用工厂是可以让换实现类。
比如,你以前是使用new一个接口的实现类,现在要换一个类,你要在所有new的地方都改。如果你不是new的,而是用工厂的create,那你只需要修改工厂的create实现,换个类输出就行了。
模式有时是为了增加扩展性和灵活性,是否使用要看需求而定。