Data structures graphql解析器返回评级计数的首选数据结构是什么?

Data structures graphql解析器返回评级计数的首选数据结构是什么?,data-structures,graphql-js,Data Structures,Graphql Js,视图: 我从graphql字段解析器返回的Json。 json是sql查询的直接响应: 前端开发人员说: 对此,我的答复是: 我觉得这是过度工程的情况,视图有责任根据其视图需求转换和使用数据。我理解需要缓存计数来优化查询响应,这与arrray vs json格式无关。前端开发人员不相信我的回答,认为这会导致性能问题,我无法理解,他要求我向stackoverflow社区征求意见。如果您能对此有所启发,我们将不胜感激。也许我会从中学到一些东西 对于像这样的少量数据,从视图角度看渲染不是问题。根据

视图:

我从graphql字段解析器返回的Json。 json是sql查询的直接响应:

前端开发人员说:

对此,我的答复是:


我觉得这是过度工程的情况,视图有责任根据其视图需求转换和使用数据。我理解需要缓存计数来优化查询响应,这与arrray vs json格式无关。前端开发人员不相信我的回答,认为这会导致性能问题,我无法理解,他要求我向stackoverflow社区征求意见。如果您能对此有所启发,我们将不胜感激。也许我会从中学到一些东西

对于像这样的少量数据,从视图角度看渲染不是问题。根据我对对象和数组结构的看法,在这些场景中应该考虑对象的情况。因为目前的评级是由星星显示的,如果将来它将被转换成图形或其他类型的表示呢

在这些情况下,由于您已经将视图紧密地耦合到服务器端逻辑中,所以需要从双方进行更改。若使用对象,那个将只从视图端进行,服务器将独立于视图

不仅对象为您提供了解耦环境,而且在将来,如果您想添加一些额外的信息,这对两个视图都很容易。目前它只针对数字,如果将来view需要更多基于用户、区域等配置文件的信息,最终您需要将其转换为这些结构。所以,如果你选择实物,效果会更好

从正面来看,如果你想优化,你可以使用记忆函数来实现对象的依赖性或规范化,这将有助于视图不受进程的影响 很多

对于将它们转换为数组的reducer函数的逻辑,它是一些what over操作,假设find方法进行线性扫描,并且您的数据被排序,那么find方法在五个数据库案例中达到15。您可以使用排序,它大约为11,与普通阵列相比,您可以获得更高的效率和可扩展性。因为大多数排序方法都接受自定义函数进行排序


任何更正或其他更多选项都将不胜感激。

对于这样的少量数据,从视图角度来看,渲染不是问题。根据我对对象和数组结构的看法,在这些场景中应该考虑对象的情况。因为目前的评级是由星星显示的,如果将来它将被转换成图形或其他类型的表示呢

在这些情况下,由于您已经将视图紧密地耦合到服务器端逻辑中,所以需要从双方进行更改。若使用对象,那个将只从视图端进行,服务器将独立于视图

不仅对象为您提供了解耦环境,而且在将来,如果您想添加一些额外的信息,这对两个视图都很容易。目前它只针对数字,如果将来view需要更多基于用户、区域等配置文件的信息,最终您需要将其转换为这些结构。所以,如果你选择实物,效果会更好

从正面来看,如果你想优化,你可以使用记忆函数来实现对象的依赖性或规范化,这将有助于视图不受进程的影响 很多

对于将它们转换为数组的reducer函数的逻辑,它是一些what over操作,假设find方法进行线性扫描,并且您的数据被排序,那么find方法在五个数据库案例中达到15。您可以使用排序,它大约为11,与普通阵列相比,您可以获得更高的效率和可扩展性。因为大多数排序方法都接受自定义函数进行排序

如有任何更正或其他更多选项,将不胜感激