首页 > 解决方案 > 带有单例的工厂模式

问题描述

假设我有一系列项目,我在应用程序启动时将它们加载到项目管理器中,并且这些项目中的每一个都属于某个组,比如建模动物,我希望获得动物类型。一旦我创建了这些对象并将它们加载到内存中,我是否可以使用某种形式的工厂模式,当传递给定字符串时,例如“鸟”可以从文件管理器中随机选择鸟类类型的动物。这是否仍然符合工厂模式,因为它不是严格创建对象?如果没有,是否有任何设计模式可以解耦请求特定对象?

标签: design-patterns

解决方案


您的要求类似于 FlyWeight 模式的需要,而不是 Singleton 的 Factory。

享元是一种通过与其他类似对象共享尽可能多的数据来最小化内存使用的对象。

有关更多详细信息,您可以参考wikiOODesign


推荐阅读