有時候我會看到有boot.scala或Boot.scala文件的項目。雖然這看起來不是一個硬性和快速的Scala規則,但它看起來似乎是一種民間傳說,包括Boot.scala文件在一些項目中。這個特定的項目使用Akka和Spray,它轉換爲演員模式和REST服務。Boot.scala適合在哪裏?
會有人請解釋通常可以在這樣一個文件可以預期什麼類型的功能,如果這是某種形式的共同的模式?
進行了擴展,這個問題(請回答第一位第一:-),我將不勝感激知道如何閱讀代碼,這是在具有多個Boot.scala文件的項目。
trait Web {
this: Api with Core =>
....
}
Boot.scala在API包:
trait Api {
this: Core =>
....
}
Boot.scala核心包:
trait Core {
implicit def actorSystem: ActorSystem
implicit val timeout = Timeout(30000)
val application = actorSystem.actorOf(
props = Props[ApplicationActor],
name = "application"
)
Await.ready(application ? Start(), timeout.duration)
}
一個能夠用於收集用戶
在web包Boot.scala一個軟件包依賴於另一個軟件包,並且Boot.scala文件可能在基於角色的系統中很常見,但是如何操作一個人是否會閱讀這些關係?例如,我如何閱讀英語中的特徵Web {this:Api with Core => ...}?
在特定情況下,應用程序的出發點是主文件:
object Main extends App {
implicit val system = ActorSystem("RESTService")
class Application(val actorSystem: ActorSystem) extends Core with Api with Web {
}
new Application(system)
sys.addShutdownHook {
system.shutdown()
}
}
我意識到我的問題似乎微不足道了一些,但我試圖進入Scala的部落在這裏,並且'祕密密碼'不在任何手冊中。
啊哈,現在很多東西都落在了地方。謝謝Kim。 – Jack 2012-08-16 11:35:59