将具有多种方法的服务拆分为较小的方法的最佳方法是什么?

时间:2020-03-12 16:42:37

标签: service split delegates circular-dependency

拥有一个具有许多方法(让我们称之为BigService)的大型服务(具有其businnes逻辑),我想将此服务拆分为较小的服务。我有一个调用此BigService的Controller。我想将此BigService拆分为较小的,所以我认为我有两种方法:

  1. 保留BigService类,并从该类中按功能提取较小的服务,然后从此BigService中调用这些较小的服务。因此,BigService就像是其他服务的代理或委托。使用此选项:

    -使用此选项的优点是我不必将控制器的呼叫更改为 BigService,只是BigService内部的调用

    -我会避免某些服务依赖其他服务进行循环引用

  2. 删除BigService类并创建新的较小的服务。与此:

    -使用此选项的缺点是我必须更改来自控制器的调用 这些较小的服务

    -某些服务可能会进行循环引用,具体取决于其他服务,反之亦然

您认为最好的方法是什么?谢谢!

0 个答案:

没有答案