【发布时间】:2015-06-19 16:58:24
【问题描述】:
假设我有一个用 Scala 实现的通用组件(就像 this post 建议的那个):
import scala.collection.mutable.Map
sealed trait Language {
val messages: Map[String, String]
}
class English extends Language {
val messages: Map[String, String] =
Map("M01" -> "Ready for cooking - press START",
"M02" -> "Close the door to start cooking")
}
class French extends Language {
val messages: Map[String, String] =
Map("M01" -> "Pret pour la cuisson - presse START",
"M02" -> "Fermez la porte pour commencer la cuisson")
}
class Lang[A <: Language] {
private var language: Language = new English
def chosen(lang: A): Unit = {
language = lang
}
def displayMessage(msg: String): Unit = {
println(language messages msg)
}
}
我关心的是如何构建一个配置生成器(我指的是 C++ 的术语)来配置这个组件?至少有参考吗?或者另一种方式,我如何使用配置文件来配置它?
【问题讨论】:
-
您的担忧是否与 i18n 相关?
-
@Nader Hadji Ghanbari,不,一点也不。我只是想找到一种方法并以不同的方式配置一堆这样的组件。也许构建一个可以配置它们的 DSL!
标签: scala configuration generator configuration-files