我一直在使用通常定義嵌套在特徵中的類的Play Framework應用程序。這是一個設計簡單的例子。嵌套在特質中的類:價值是什麼?
服務/ UsefulServiceComponent.scala
trait UsefulServiceComponent {
val usefulService: UsefulService
class UsefulService {
def doSomething(thing: Thing): OtherThing = {
// etc.
}
}
}
控制器/ TheController.scala
import services.UsefulServiceComponent
object TheController extends Controller with UsefulServiceComponent {
val usefulService = new UsefulService
def findOtherThing(id: Long) = {
val thing = ??? // Get it from somewhere
usefulService.doSomething(thing)
}
// etc.
}
這是常見的模式?在UsefulServiceComponent
內嵌套UsefulService
可獲得什麼價值?
謝謝。你能否請進一步解釋或鏈接到範圍或裝飾等參考? – pharsicle