Scala应用程序中全局常量的最佳实践

时间:2017-09-02 10:03:21

标签: scala object constants

通常我会创建一个“Scala对象”来保存所有的全局常量。 我被告知最好使用“包对象”来保持常量。 我之前从未使用过“包对象”,所以我的问题是:

在Scala中保存常量的最佳做法是什么?为什么?

为什么我需要“包对象”?

1 个答案:

答案 0 :(得分:5)

需要一个包对象。

但是,它允许您在包级别创建代码而不声明另一个类或对象。

这是一种便利。

package foo.bar

package object dem {
  // things here will be available in `foo.bar` package and all subpackages 
  // without the need of an import statement.
}

为常量指定的唯一约定是关于casing。常量应该是 PascalCased

请注意,在包对象中声明常量可能会使它们在您不希望它们可用的地方可用。

我告诉你naming convention包裹对象:

  

标准命名约定是将上面的定义放在名为package.scala的文件中,该文件位于与包pp对应的目录中。