我对这里的依赖注入完全陌生。
如果我正在构建一个使用依赖注入的 twitter 客户端,那么控制以特定间隔(比如 5 分钟)刷新我的流的逻辑应该放在哪里?
我对这里的依赖注入完全陌生。
如果我正在构建一个使用依赖注入的 twitter 客户端,那么控制以特定间隔(比如 5 分钟)刷新我的流的逻辑应该放在哪里?
当您选择使用依赖注入时,您选择定义隐藏实现细节的抽象。最大的挑战之一是在设计抽象时忘记实现细节。
虽然您可能知道您将定期轮询 HTTP 服务,但您不一定要基于该假设来定义您的抽象。
想象一下,事情有很大不同——例如,有问题的服务可以将更新推送到客户端。抽象还会成立吗?
即使你从没想过会使用轮询消费者以外的任何东西,上面仍然是一个很好的练习,因为它迫使你考虑你是否设计了一个泄漏的抽象。
所以,回答这个问题:刷新逻辑属于数据访问实现。