gpt4 book ai didi

python - 将类的实例存储在类变量中是一个好的模式

转载 作者:行者123 更新时间:2023-11-28 18:40:40 24 4
gpt4 key购买 nike

我在 Python 中经常使用的一种设计模式是这样的:

class Foo:
foos = []
def __init__(self, argument):
initialize_instance()
foos.append(self)

这有名字吗?它是否被认为是有用的模式?

最佳答案

我真的不认为这在 OOP 中是一个好的实践(我不是 Python 专家)。使用静态(如列表 foos)几乎总是一个糟糕的概念。正如评论中所说,更好的解决方案是设置一个服务类(查看 OOP 中的 SOA 模式)来索引所有 Foo 实例并进一步检索它们。

但是,不要认为这是注册表模式的变体。这是这种模式的反模式,它阻止了类之间正确的低耦合。当然,Python 并不是执行强大的 OOP 并尊重这一点的更好语言,但无论如何我都不建议这样做。

关于python - 将类的实例存储在类变量中是一个好的模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26532899/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com