【发布时间】:2013-09-01 10:32:51
【问题描述】:
我在这里遇到一种情况,我需要在我的类中使用一个计时器,它根据时间间隔调用一些方法。
在正常情况下,我会实例化计时器并在构造函数本身中对其进行配置。但我想以依赖注入的方式来做。在构造函数中传递计时器很容易,但是为了将一个方法绑定到它的 OnTimeElapsed 是很棘手的,工厂实例化该类是否应该配置这个计时器?在不违反依赖注入原则的情况下,我应该如何继续。
谢谢
编辑1
好的,让我重新表述我真正想问的问题。- 根据发布的视频 Misko
- 在他的其他谈话中(从不测试你的框架:.net 框架 在这里)
- in his code review guide 任何东西 超出构造函数中的字段分配被认为是错误的。
我实现依赖注入的主要目标是,我需要在特定的经过时间对某个方法是否被调用进行单元测试。
所以我的问题是:我应该在哪里绑定 OnTimerElapsed 事件? 我真的想在这里测试计时器吗? 我好像迷路了
请帮忙。
【问题讨论】:
-
你为什么要注入一个计时器?我认为没有理由这样做......
-
@PatrykĆwiek 依赖注入说要求你想要的东西。我只是对这个东西很陌生,不知道这是否是个好主意。
标签: c# oop architecture dependency-injection software-design