Macam-Macam Design Patterns : source - upandrunningsoftware.com |
Hal-hal seperti itu yang mendasari sebuah software memiliki penggunaan yang berbeda dalam penerapanya, meskipun memiliki konsep dan tujuan yang sama.
Contoh CMS :
Wordpress dengan Joomla, meski sama-sama memiliki konsep dan tujuan yang sama, bisa untuk membangun sebuah blog atau website, namun implementasinya berbeda (hal itu dapat terlihat dari struktur folder dan struktur kode yang dibangun).
Contoh Framework :
Demikian juga dengan Framewok Zend dan Code Igniter, meski sama-sama framework dan mengusung MVC namun dalam penerapan keduanya sanggat terbilang berbeda.
Design pattern ada bermacam-macam, Design Pattern terbagi menjadi tiga yaitu Creational Pattern, Structural Pattern, dan Behavioral Pattern.
Creational Pattern adalah pattern yang digunakan dalam kasus penciptaan objek (Cara class/object di-inisiasi).
- Factory Pattern adalah pattern yang digunakan untuk mengembalikan objek yang merupakan instance dari salah satu dari beberapa subclass dari sebuah abstract classs. saat kita diminta membuat objek yang harus mengcreate subclass dan kita tidak tahu objek mana yang harus di create. subclass yang dipilih tergantung pada kondisi dan parameter tertentu.
- Abstract Factory Pattern adalah pattern yang digunakan saat ingin menghasilkan objek yang berasal dari salah satu dari beberapa kelas yang berkaitan, dimana objek tersebut dapat mengembalikan beberapa objek lain yang berbeda.
- Builder Pattern adalah pattern yang digunakan ketika pembangunan objek sangat kompleks sehingga harus memanggil kelas lain untuk mengisi kelas tersebut.
- Prototype Pattern adalah pattern yang dimulai dengan inisialisasi dan instansiasi class dan menyalin atau menggandakannya untuk membuat instansi baru daripada membuat intansi baru.
- Singleton Pattern adalah sebuah class yang hanya bisa memiliki satu instansi.
Struktural Pattern adalah pattern yang digunakan untuk mengkomposisikan kelas atau membuat struktur kelas (Struktur/relasi antar object/class).
- Adapter Pattern merupakan kelas yang bertindak sebagai translator. Adapter Pattern digunakan untuk membuat sebuah perantara diantara dua kelas dengan mengubah interface pada salah satu kelas sehingga dapat digunakan dengan interface lain.
- Bridge Pattern digunakan untuk membagi sebuah komponen yang kompleks menjadi dua hirarki inheritance yang terpisah tetapi saling berhubungan. Kedua hirarki ini menggambarkan Abstraksi Fungsional dan Implementasi Internal.
- Composite Pattern digunakan untuk menyediakan cara yang fleksibel untuk membuat struktur hirarki tree, dimana setiap komponen tree memiliki operasi yang bentuk interfacenya seragam.
- Decorator Pattern menyediakan sebuah cara yang fleksibel untuk menambahkan atau menghilangkan fungsionalitas dari sebuah komponen tanpa merubah interface / antarmuka dari komponen tersebut.
- Facade Pattern menyediakan interface / antarmuka yang mudah untuk sebuah subsistem yang kompleks, untuk memudahkan user interface.
Behavioral Pattern adalah nama pattern yang diterapkan agar objek bisa berkomunikasi dengan yang lain (Tingkah laku atau fungsi dari class/object).
- Interpreter adalah Menerapkan bahasa komputer khusus untuk cepat menyelesaikan serangkaian tertentu masalah.
- Template Method adalah Menjelaskan kerangka Program dari sebuah program.
- Chain of Responsibility adalah objek Command ditangani atau diteruskan ke objek lain dengan logika yang mengandung objek pengolahan.
- Command adalah obyek Command merangkum tindakan dan parameternya.
- Iterator adalah Iterators digunakan untuk mengakses elemen dari sebuah objek agregat berurutan tanpa memaparkan representasi yang mendasarinya.
- Mediator adalah Menyediakan antarmuka yang seragam untuk satu set antarmuka dalam subsistem.
- Memento adalah Menyediakan kemampuan untuk mengembalikan obyek ke keadaan sebelumnya (rollback).
- Flyweight
- Observer alias Publish / Topik atau Pendengar Event. Objek mendaftar untuk mengamati suatu peristiwa yang mungkin diajukan oleh obyek lain.
- State adalah Sebuah cara yang bersih untuk objek untuk mengubah sebagian jenisnya pada saat runtime.
- Strategy adalah Algoritma dapat dipilih dengan cepat.
- Visitor adalah Sebuah cara untuk memisahkan sebuah algoritma dari sebuah objek.
Tidak ada komentar:
Posting Komentar
Catatan: Hanya anggota dari blog ini yang dapat mengirim komentar.