Senin, 05 Desember 2016

Design Pattern - State Pattern

Kali ini saya akan membahas mengenai salah satu Design Pattern yaitu State Pattern. Untuk memenuhi penugasan Kuliah Perancangan Perangkat Lunak. apa itu Design pattern ?
  
 1. Definisi Design Pattern
Design Pattern adalah sebuah solusi untuk menyelesaikan masalah umum yang sering di temui dan dihadapi, yang membentuk sebuah pola (pattern) tertentu dalam membuat sebuah program. Pattern adalah bagaimana mendesain kelas dan bagaimana interaksi yang terjadi antar kelas tersebut sehingga kelas yang kita bangun bisa lebih elegan dan reusable. Ada beberapa pattern yang populer saat ini yang diciptakan oleh GoF (Gang of Four) yaitu Abstract Factory, Builder, Factory Method, Prototype, Singleton, Adapter, Bridge, Composite, Decorator, Facade, Flyweight, Proxy, Chain of Responbility, Command, Interpreter, Iterator, Mediator, Mementto, Observer, State, Strategy, Template Method, Visitor. (sumber : http://coretantian.blogspot.co.id/2012/04/pengertian-design-pattern.html) 

 2. Definisi State Pattern
Namun pada pembahasan kali ini kita akan membahas khusus Design patter - State Pattern. nah untuk pengertian dari state pattern itu sendiri adalah solusi untuk masalah bagaimana membuat perilaku tergantung pada state.Pola state ini tidak menentukan mana transisi state yang akan di definisikan. Pilihannya adalah dua, yakni : “konteks” objek atau setiap kelas state individu berasal. Keuntungan dari opsi terakhir adalah kemudahan untuk menambah kelas baru yang berasal dari state. Kelemahannya adalah setiap kelas turunan dari state memiliki pengetahuan sambungan yang memperkenalkan dependensi antara subclass. (Sumber : https://nchy22.wordpress.com).

Nah bagaimana pengertian dari Design pattern dan state pattern diatas ? apakah sudah mengerti ? jika sudah, mari kita melihat implementasinya :

  • Context : kelas ini berfungsi untuk membawa informasi baru terkait state yang berganti
  • State : merupakan suatu interface yang akan mendefinisikan suatu aksi yang terhubung kepada Context untuk perubahan state
Kita akan membuat sebuah antarmuka dari state yang akan mendefinisikan aksi.

1. membuat interface :  State.java

2. Membuat Kelas concrete yang mengimplementasikan interface : StartState.java StopState.java 3. Membuat kelas context : Context.java 4. Menggunakan context untuk melihat perubahan behavior ketika state berganti : StatePatternDemo.java 5. Output
Share:

Farhanramadhana.blogspot.com

Diberdayakan oleh Blogger.

Daftar Blog Saya