我刚刚阅读了Jonas' well-known article about Cake Pattern,类似于:
class UserRepository {
def authenticate(user: User): User = {
println("authenticating user: " + user)
user
}
def create(user: User) = println("creating user: " + user)
def delete(user: User) = println("deleting user: " + user)
}
根据那篇文章,对于使用Cake Pattern,它需要被包装为特征中的内部类,例如:
trait UserRepositoryComponent {
val userRepository: UserRepository
class UserRepository {
...
}
}
所以我想知道:
UserRepository
这样的类必须在设计时考虑到蛋糕模式(以便它们可以包裹在特征中)?