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

mkU*_*tra 4 scala constants object

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

在Scala中保存常量的最佳实践是什么?为什么?

为什么我需要"包对象"?

ped*_*mss 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.
}
Run Code Online (Sandbox Code Playgroud)

为常量指定的唯一约定是关于套管.常量应该是PascalCased

请记住,在包对象中声明常量可能会使它们在您不希望它们可用的位置可用.

我告诉你包对象的命名约定:

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