代码之家  ›  专栏  ›  技术社区  ›  fig

用什么来代替单重态?

  •  9
  • fig  · 技术社区  · 14 年前

    单例常常被认为是一个糟糕的设计选择,所以当你想避免它们的时候,你应该如何设计一个应用程序呢?

    2 回复  |  直到 14 年前
        1
  •  8
  •   Asaf David    14 年前

    你可以使用这样的概念 Dependency Injection 向您注入所依赖的服务(基本上是您使用的单例服务),而不是提供对它们的全局引用

        2
  •  2
  •   Andrey Taptunov    14 年前

    我的2美分。

    只要以这样的方式设计你的应用程序,它是否传递给你的对象并不重要。

    请考虑是否有mysingleton.instance在内部->这看起来很糟糕,并且与此紧密耦合。 如果在方法中将mysignleton作为参数传递,并且在外部将其实例化为mysingleton.instance或new mysingleton()->哦,我仍然可以模拟或更改它,因此这并不重要。