【发布时间】:2011-04-01 05:56:19
【问题描述】:
假设我目前正在设计一个需要使用全局计时系统的应用程序(这是一个横切关注点)。我需要从我的应用程序中的任何位置访问来自该全局计时系统的数据,而且我无法看到“应用程序的这一部分需要它而另一部分不需要”。
我的问题是.. 我应该将其设计为一种环境上下文(在本例中为 Singleton),还是应该尝试设计其他方式来适应这种情况?
我当然认为让我的所有类都必须通过构造函数注入将这个全局计时类传递给它们是不正确的。很多时候,我不得不将引用真正传递到链中,直到某些类最终需要它。另一方面,从阅读的角度来看,它会让一切变得更加清晰(它让我的类的依赖关系变得清晰)。
人们通常如何处理这个问题?周围有没有其他技术可以帮助解决这个问题? AOP 可能吗?
PS:全球计时系统只是我从我正在阅读的一本书中得到的一个想法。日志系统将是此类问题的另一个很好的例子。
谢谢
【问题讨论】: