为什么Angular的工厂(单身人士)设计不错?

时间:2015-12-16 22:19:24

标签: angularjs design-patterns singleton

单身人士在很大程度上是一个坏主意。我相信每个人都有这个概念。我想知道为什么Angular如此依赖工厂依赖注入,因为工厂是单身人士?为什么单身人士在Angular中不是一个坏主意?

1 个答案:

答案 0 :(得分:4)

Singleton不被认为是一种良好的做法'直接访问时,通过全局类名(在java中)或作为全局变量。您的代码与它相结合,难以重用和单元测试。一个类/模块中的更改可能会导致另一个类的副作用,而无法独立执行这些模块。

Angular中,它作为依赖项注入 - 一个函数参数。所以这是另一回事。您可以轻松地将您单独的不同实现传递给一个函数,并将其与另一个函数不同(如果您愿意)。您的代码显式地将其声明为依赖项,并允许客户端(调用者)传递他想要的任何内容,而不是在内部隐藏它。