校招刷题群
高效刷题 迎战校招
校招精选试题
近年面笔经面经群内分享
Java刷题群 前端刷题群 产品运营群
首页 > 设计模式 > 工厂模式
题目

工厂模式的意义在哪里?为啥有这种设计模式?(字节面试题)

解答

众所周知,设计模式是一个综合性使用的过程,如果单一地使用设计模式,往往会让你的代码显得繁杂且难以理解。同时设计模式也是大厂面试的常见问题

工厂方法的出现解决的就是对象创建的问题,把建立对象实例交给子类来进行。说白了,就是把建立对象实例的过程从正常的业务逻辑中剥离出去,通过抽象来实现。

使用工厂模式能给系统设计带来什么好处?

对于复杂参数构造的对象,可以很好的对外层屏蔽代码复杂性
很好的解耦能力,能将业务(上)层和基础计数层之间实现完全的解耦
可以控制运行上下文中实体对象的数量,降低内存使用量
屏蔽底层实现改动对上层的冲击

使用工厂模式有什么缺陷?

一类产品需要对应一个具体的工厂,增加了代码的冗余度
工厂方法负责实例的创建,这个系统层次非常重要,一旦出问题,系统将不能正常工作
产品迭代时将迅速的增加工厂层的规模
封装和继承是设计模式的“原料”,接口和抽象类的使用可以有效的改进我们的架构。

设计模式在架构中要综合使用,同样的场景可以适配多种设计模式,但切记不要过度设计。

工厂模式主要的意义:
将实例化过程与业务逻辑真正的解耦
屏蔽复杂的对象创建逻辑
控制内存中存活对象的数量,防止coredump。

C 0条回复 评论

帖子还没人回复快来抢沙发