Junior — Middle
Davranışsal tasarım kalıbına bir örnek verebilir misin?
sobes.tech yapay zeka
AI'dan gelen yanıt
Bir davranış kalıbı örneği, "Gözlemci" (Observer) kalıbıdır. Bu kalıp, başka bir nesnenin durumundaki değişiklikleri birden fazla nesneye bildirmek gerektiğinde kullanılır.
Android'de, bu kalıp genellikle LiveData ve ViewModel ile çalışırken kullanılır; burada View, veri değişikliklerine abone olur ve otomatik olarak güncellenir.
Kotlin'de örnek:
class Subject {
private val observers = mutableListOf<Observer>()
var state: Int = 0
set(value) {
field = value
notifyObservers()
}
fun attach(observer: Observer) {
observers.add(observer)
}
private fun notifyObservers() {
observers.forEach { it.update(state) }
}
}
interface Observer {
fun update(state: Int)
}
class ConcreteObserver : Observer {
override fun update(state: Int) {
println("Durum güncellendi: $state")
}
}
fun main() {
val subject = Subject()
val observer = ConcreteObserver()
subject.attach(observer)
subject.state = 10
}