依赖注入刷新逻辑位置

时间:2011-09-15 19:26:24

标签: dependency-injection robotlegs

我在这里完全依赖依赖注入。

如果我正在使用依赖注入构建一个推特客户端,那么控制在特定时间间隔(例如5分钟)刷新我的流的逻辑应该放在哪里?

1 个答案:

答案 0 :(得分:3)

当您选择使用依赖关系注入时,您选择定义隐藏实现细节的抽象。最大的挑战之一是在设计抽象时忘记实现细节。

虽然您可能知道您将定期轮询HTTP服务,但您不一定要根据该假设来定义您的抽象。

想象一下事情是非常不同的 - 例如,有问题的服务可以将更新推送到客户端。抽象仍然存在吗?

  • 如果您围绕假设客户端是Polling Consumer来构建抽象,那么如果您需要在Event-Driven Consumer上实现它,则可能不适合。
  • 有趣的是,使用基于轮询的技术模拟事件驱动的消费者更容易。

即使您从未期望使用除投票消费者以外的任何其他内容,上述内容仍然是一项很好的练习,因为它会迫使您考虑是否设计了漏洞抽象。

所以,回答这个问题:刷新逻辑属于数据访问实现