Perkenalan Design Pattern

Pengertian Design Pattern

Pada software enginering (Perancangan Perangkat Lunak), sebuah design pattern dapat diartikan sebagai sebuah solusi yang sering terjadi secara umum pada saat kita mendesain aplikasi. Ia bukanlah sebuah design yang dapat langsung diterapkan, ia hanya berisi deskripsi atau template untuk menyelesaikan masalah.

Kita perlu mengetahui design pattern karena umumnya masalah yang ada sering ditemui selalu berulang. Perulangan-perulangan tersebut biasa dinamakan pola (pattern). Para ahli software design sudah pernah menyelesaikan permasalahan tersebut lalu menuangkan dalam sebuah kumpulan “rumus” yang disebut design pattern.

Keuntungan penggunaan design pattern adalah untuk mempercepat proses development serta membuat kode yang lebih baik.

Pentingnya Memahami Design Pattern

Untuk dapat memahami design pattern setidaknya anda harus sudah memahami Konsep Object Oriented.

Design pattern dapat dibagi menjadi 3 jenis yaitu

     
 

1. Creational Design Pattern

Pattern ini hanya berbicara tentang bagaimana meng-instance sebuah kelas. Secara teori memang mudah untuk membuat object tetapi cara yang mudah tersebut belum tentu efektif.

Adapun jenis-jenis dari creational design pattern adalah Abstract Factory, Builder, Factory Method, Object Pool, Prototype, Singleton. Dari sekian banyak jenis-jenis tersebut ada yang memiliki fungsi yang sama dan saling melengkapi.

2. Structural Design Patterns

Tujuan pattern ini untuk membuat class composite atau object composite. Tujuan utamanya adalah mempermudah dalam mendefinisi kan cara untuk meng-compose object untuk fungsionalitas yang baru.

Adapun contoh dari pattern ini adalah : Adapter pattern, Bridge pattern, Composite pattern, Decorator, Facede, Flyweight, Proxy

3. Behavioral Design Patterns

Pattern ini adalah bertujuan untuk menangani komunikasi antar kelas atau object.

Baca Juga   Object Oriented Programming (OOP)

Adapun contoh dari pattern ini adalah : Chain of responsibility, Command, Interpreter, Iterator, Mediator, Observer, Strategy.

Untuk lebih jelasnya kita akan membahas satu persatu masing-masing pattern.

You might be interested in …