【问题标题】:Apache Thrift Struct for better readabilityApache Thrift Struct 以获得更好的可读性
【发布时间】:2022-01-10 01:34:02
【问题描述】:

我刚开始使用 thrift 并创建了以下 thrift 界面。

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

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

【问题讨论】:

    标签: java refactoring thrift code-readability


    【解决方案1】:

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

    使用struct 作为返回值

    服务方法(目前)以大多数编程语言的方式设计1)使用可调用函数的概念:尽管它允许传递 0-N 个参数 ,您仍然被限制为最多一个返回值2)

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

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

    • 不再局限于 1 个返回值:根据需要添加任意数量的字段
    • 可扩展:您将来可以添加更多字段而不会破坏它
    • 可读性:分离方法和 retval 为您提供更清晰的代码
    • 可重用性:可以轻松地为多个方法使用相同的返回结构

    这有多酷?


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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-09-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-08-13
      相关资源
      最近更新 更多