在我的应用程序中,我有一个约2000行的服务,我想重构。我创建了几个较小的服务和划分方法,大到小。所以现在我有例如groupService
只能与群组合作,playerService
只与玩家合作等等。问题是,有时服务A需要服务B来做一些工作。
示例:我有playOffService
与playOff(创建更新...)和finalStandingService
一起使用。当更新playOff时我还需要更新finalStanding。我该如何解决这个问题?只需将finalStandingService添加到PlayOffService,还是有更好的解决方案?
答案 0 :(得分:3)
您正在谈论依赖,这是面向对象软件设计中的常见问题。请查看Dependency Injection上的维基百科文章。
我不一定建议引入新库来为您完成此任务,特别是如果您是新手并且无法自己完全评估库,但您可能会发现一些有用的模式。
请请在开始重构之前编写完整的服务单元测试!当你一次重构一个小块时,让它们通过。当你完成时,你会感谢自己!