合并与单独的后端调用

时间:2017-10-04 07:53:06

标签: java architecture

我试图为我正在研究的用例找出最佳解决方案。但是,我很高兴收到你们的一些建筑建议。

我有一个用例,其中前端应显示分配给任务的用户列表以及未分配但能够分配给同一任务的用户列表。

我不知道更好的解决方案是什么:

  • 有一个后端调用,它收集两个用户列表并发送它们 返回包含两个列表的新数据类中的前端。

  • 有两个后端调用,它们收集两个列表中的一个并发送它们 单独回来。

第一个解决方案的专业人员是单个后端呼叫,而第二个解决方案专业人员是后端单独方法的可重用性。

对于哪种解决方案更喜欢以及为什么提出建议?

我应该熟悉哪种模式或标准?

2 个答案:

答案 0 :(得分:1)

当我偶然发现从服务器获取数据的要求时,我开始只做一次调用,或多或少(取决于问题域),一个功能(我称之为任务用户列表) )。

这种方法节省了客户端的实现复杂性,并节省了事务的协议开销(TCP标头等)。

如果性能分析显示调用太慢,因为它请求太多数据(用户体验受到影响),那么我会选择第二个解决方案。

总结一下,我将从第一种方法开始。在必要时优化(使用更复杂的解决方案)。

答案 1 :(得分:0)

由于可重用性,我更喜欢这两个电话。也许有一天你需要为一个案例添加第三个用户列表,如果你只使用一个方法,你需要更改方法。但是可能还有其他用例只需要两个列表而不是三个列表,所以你需要在那里更改代码。您还需要更改所有测试方法。如果您的项目变大,这会使您的项目难以更新或修复。此外,所有修改都增加了引入新bug的机会。

看到后端的前端可以像接口一样调用的方法有帮助。 通常,接口应该打开以进行扩展,但是关闭方法返回和要求的内容。否则,稍微修改会导致各种更多修改。