저는 최근 스칼라 배우기를 시작했고 간단한 프로젝트를 시작하기위한 작은 프로젝트를 시작했습니다. 그러나, 나는 관찰자 패턴을 구현하려고 애 쓰고있다. This 답변은 주제를 터치하지만 어떻게 작동시키는 지 알 수 없습니다. 아래 링크는 위에 링크 된 답변의 코드입니다. 나는 대부분 "this : S =>"코드의 일부로 혼란 스럽다. 나는 거기에 어떤 종류의 기능이 있어야한다고 생각하지만 확실하지 않다. 제목 특성을 확장 할 클래스에서 튜플을 반환하도록하고 싶습니다.옵저버 패턴 구현
trait Observer[S] {
def receiveUpdate(subject: S);
}
trait Subject[S] {
this: S =>
private var observers: List[Observer[S]] = Nil
def addObserver(observer: Observer[S]) = observers = observer :: observers
def notifyObservers() = observers.foreach(_.receiveUpdate(this))
}
구체적인 예를 들어 주셔서 감사합니다. 지금 잘 됐어. – Zavior