Apache Thrift Struct 提高可读性

Apache Thrift Struct for better readability

我刚开始使用 thrift 并创建了以下 thrift 接口。

map<string, map<string, string>> getInformationByIds(1: set<string> Ids)

如您所见,return 类型是 map of maps。我想知道是否可以通过创建自定义节俭结构来提高可读性。任何方向表示赞赏。

虽然我很难将此与可读性联系起来,但我可以提供一个通用的建议,或许也能为您解决这个问题。

使用 struct 作为 return 值

服务方法(当前)以大多数编程语言的方式设计1)使用可调用函数的概念:尽管它允许移交 0 -N arguments,你仍然被限制在最大one return value only 2):

RETVAL  function( ARG1, ARG2, ..., ARGN) throws (...)

因此,在您的服务方法中使用 as struct 作为 return 值被证明是一种非常聪明的方法。事实上,它一次解决了四个问题:

  • 不再限于 1 个 return 值:根据需要添加任意数量的字段
  • 可扩展:您可以在以后添加更多字段而不会破坏它
  • 可读性:分离方法和 retval 使您的代码更清晰
  • 可重用性:很容易为多种方法使用相同的return结构

这有多酷?


1) 例如Golang 是一个明显的例外。

2)我们这里不统计异常,只统计正常数据。