Wednesday 3 April 2013

Design Pattern di Java, C# dan PHP

Alhamdulillah kali ini ane udah sempat nulis lagi diblog ini, dan tentunya masi tentang design pattern, pada postingan sebelumnya ane udah bahas satu pattern yaitu pattern singleton menggunakan java. kali ini ane berniat untuk menulis lagi tutorial implementasi design pattern dengan Java, C# dan PHP. jadi ane nulis mulai awal. sebelumnya ane berfikir untuk menulis design pattern hanya dengan java yang bisa ente baca disini, karena, jujur saja untuk pemrograman dekstop ane lebih suka javva dari pada C#, kalo web ane suka PHP :D . selang sehari ane upload pattern singleton kmaren, ane liat temen2 pada bingung dengan penerapannya di C# dan sebagian meminta bantuan ane... ane suruh mereka ke blog ane tapi sebagian gak bisa buat mengkonversi dari C# ke Java..
Hemmb.. kalo dipikir-pikir kalo ane upload pake C# di blog ini, bisa untuk menambah page view nya blog ini :D , bisa jadi bisnis... wkwkwkwk.. dan kita memang harus bisa memanfaatkan peluang yang ada... dari situlah ane berniat untuk menulis ulang tutorial design pattern ini dengan 3 bahasa yaitu Java, C# dan PHP.. bagaimana dengan C++.. kalo C++ itu seperti nya kagak sekarang, karena ane sendiri jarang skali menggunakan bahasa C++ ini, walaupun C++ .NET , ane kurang Userfriendly dengan bahasa ini, tapi jika ada tuntutan dari pihak akademik ataupun jika ada pengunjung blog yang request dan mau memberi sedikit donasi mungkin besok2 ane upload dah :D janji...

kalo penerapannya di PHP, itu karena ane pengen skalian mengupload dengan 3 bahasa yang ane sering pakai yaitu Java, C# dan PHP.. dan mungkin ada dari temen2 ane yang juga pengen mempelajarinya dengan pemrograman web (PHP) walaupun penerapan design pattern di PHP udah banyak dibahas oleh sesepuh ane :D
Oke, sekarang kita bahas design pattern nya dahulu... Apa design pattern itu ? Design pattern secara bahasa artinya pola bentuk, sedangkan secara pemrograman design pattern adalah pola-pola algoritma untuk menyelesaikan suatu permasalahan tertentu dan secara gampang nya adalah kumpulan algoritma programmer2 untuk menyelesaikan permasalahan2 pemrograman secara efisien...kenapa ane bilang efisien ? karena algoritma yang ada di design pattern didesain salah satunya untuk memangkas penggunaan memory, selain itu algoritma nya tidak melakukan proses yang sangat lama... coba kita bandingkan dengan algoritma bikinan kita sendiri, kadang kita asal2an dalam membuat algoritma pada suatu pemorgraman, memang program berhasil dirunning tapi kita melupakan  satu hal yaitu penghematan memory dan proses kompilasi program yang lama... :D selain itu manfaat menggunakan design pattern ini adalah design aplikasi yang kita buat bisa tertata rapi dan itu tentunya sangat berguna untuk perawatan dan kemudahan untuk memaintenance aplikasi jika suatu hari ada penambahan ataupun perubahan :D ... sejauh ini paham ya sama penjelasan ane.. kalo gak paham silahkan tanya via facebook kalo yang mau cepet :D ... dasar dari design pattern ini sebenarnya adalah Object oriented programming (OOP). kalo ente mau belajar design pattern sebaiknya ente kuasai dulu konsep dari OOP, yang antara lain adalah inheritance, polymorphisme, abstract class dll. yang ane udah bahas disini dengan C#, Java dan C++. dan untuk PHP nya di blog ini juga udah ane bahas beberapa :D yang ente bisa pelajari tentunya.. kalo gak paham OOP kayak nya agak berat untuk belajar design pattern, karena semua design pattern yang jumlah nya 23 itu pasti menggunakan OOP :D

Design Pattern ada banyak versi, yang pak dosen minta itu menurut versinya gang of four, dan jumlah patternnya itu ada 23 dan dari 23 pattern itu masi dibagi lagi menjadi 3 bagian.
  • Creation Patterns
    Pattern model ini menangani pembuatan object, kalo kita kan kadang membuat object sesuka kita tanpa mempertimbangkannya. contohnya saat kita membuat suatu object yang kita buat pada suatu class tidak bisa dimanfaatkan pada kelas lain. padahal harusnya kita bisa memanfaatkannya. dengan patterns model ini kita lebih bisa mengoptimalkan pembuatan suatu object. Pattern - pattern pada model ini adalah : 
    1.   Singleton
    2.   Factory Method
    3.   Abstract Factory
    4.   Prototype
    5.   Builder
  • Structural Patterns
    Pattern model ini menyangkut tentang struktur program. Pattern model ini akan lebih fokus pada class object composite. Akan banyak ditemukan pewarisan dan penggunaan interface atau abstract class pada Pattern model ini dan penggabungan suatu object. Pattern - pattern pada model Structural ini adalah :
    1.   Adapter
    2.   Bridge
    3.   Composite
    4.   Decorator
    5.   Facade
    6.   Fly Weight
    7.   Proxy
  • Behavioral Patterns
    Pattern jenis behaviour ini lebih menangani kepada kelakuan program. Pattern jenis ini juga sering memanfaatkan tentang hubungan antar object. Pattern - pattern model ini adalah :
    1.   Chain of responsibility
    2.   Command
    3.   Interpreter
    4.   Iterator
    5.   Mediator
    6.   Memento
    7.   Observer
    8.   State
    9.   Strategi
    10. Template
    11. Visitor
Hembb.. postingan ini memang tidak menjelaskan implementasi nya pada bahasa pemrograman. insya Alloh ane akan bahas pada postingan selanjutnya tapi kalo salah satu pattern udah ane bahas nanti ane kasi link nya pada list pattern diatas... oke gan, monggo di bookmark kalo perlu :D ... sebenarnya tinggal upload saja dan contoh kode programnya sudah ane siap kan dengan Java, C# dan PHP seperti kata ane tadi :D .. oke dah gan... sekian dulu untuk postingan ini, semoga bermanfaat untuk kita semua... keep cooding :)

No comments:

Post a Comment