Design Pattern : Observer

MVC Relationship

Observer Pattern merupakan salah satu teknik yang digunakan dalam Design Pattern. Berbeda dengan Strategy Pattern yang saya jelaskan di postingan sebelumnya, Observer Pattern ini digunakan dalam kondisi MVC di mana sebuah model dapat ditampilkan secara paralel di lebih dari 1 view. Kondisi ini diilustrasikan dengan diagram berikut.

MVC Relationship
MVC Relationship

Dilihat dari ilustrasi di atas, sebuah View yang menerima data dari Model juga dapat memberikan request perubahan data untuk diteruskan ke Model, dan kemudian View yang lain menerima respon dengan mengubah data tersebut. Ini seringkali terjadi pada sebuah software multiplatform yang memiliki banyak chart untuk menampilkan data dan saling synchronize. Penggunaan Observer Pattern dapat diaplikasikan dalam kondisi berikut (mengutip dari buku Erich Gamma) :

  • When an abstraction has two aspects, one dependent on the other. Encapsulating these aspects in separate objects lets you vary and reuse them independently.
  • When a chane to one object requires changing others, and you don’t know how many objects need to be changed.
  • When an object should be able to nofity other objects without making assumptions about who these objects are. In other words, you don’t want these objects tightly coupled.

Lanjutkan membaca “Design Pattern : Observer”

Iklan