Uml diagramını açıklayacak olursak.Konu(subject) arayüzünün izleyici(observer) ekleyip, çıkaran ve de bilgilendiren 3 fonksiyonu var.İzleyici(observer) arayüzünün ise konunun durum(state) bilgisi hakkında bilgilendirmek için kullanılan güncelle fonksiyonu var.
Şimdi bu desenin nerelerde kullanılabiliceğini ne için tasarlanmış olduğunu ve de fonksiyonlarının içinin nasıl yazılması gerektiğini anlamak için örnekler verelim.
Örnek.1: Yaşamla alakalı bir örnek olarak.
Tasarım desenleri dersi veren bir öğretim kuruluşu var.
- Bu dersi almak isteyenler kayıt olmak zorunda(izleyiciEkle() fonksiyonu).
- Dersi alan kişilerin bir listesi olması gerekir ki dersleri anlatacağı yani konudan haberdar olacak izleyicileri bilsin.
- Derse başladınız,Artık belirli bir konu hakkında size bilgi geliyor.Yani ders devam ettikçe konu güncelleniyor(izleyiciBilgilendir() fonksiyonu).
- Daha sonra bu ders bitiyor ve çıkış yapıyorsunuz(izleyiciÇıkar() fonksiyonu).Artık konunun durumu hakkında bilgi edinemiyorsunuz.
- Tek bir tasarım desenleri dersi var fakat birden fazla öğrenci olabiliyor.