【问题标题】:Scala naming convention for FuturesFutures 的 Scala 命名约定
【发布时间】:2019-10-13 18:22:21
【问题描述】:

Scala 中函数返回结果包装在 Future 中的命名约定是什么?我见过这样的代码:

getResult
getResultF
getResultFtr

甚至

getResultFuture

如果没有特定的约定那么我想知道更多的做法。

【问题讨论】:

  • 不要将getX 之类的东西用于需要时间的东西。使用fetchX: Future[X]。使用getX 进行长时间通话并不是一个好主意。所以请改用fetchXcomputeXcalculateXgenerateX
  • 无特定约定
  • 我会使用getResultFuture,但这只是个人喜好AFAIK。我从来没有就命名 Futures 的“正确”方式达成共识。

标签: scala naming-conventions future


【解决方案1】:

我通常不会以任何不同的方式命名返回 Futures 的方法。我的原因是这些信息已经存在于返回类型中,并且任何体面的 IDE 在自动完成时都会清楚地显示出来。

一个例外是存在另一个类似的方法,它不返回Future,而是同步执行所有操作。在这种情况下,我想清楚地区分它们:

def fooSync: A
def fooAsync: Future[A]

这是我在很多库中看到的模式。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-04-17
    • 1970-01-01
    • 2015-08-17
    • 2019-04-26
    • 2012-06-26
    • 2019-06-20
    • 1970-01-01
    • 2013-02-09
    相关资源
    最近更新 更多