Pola desain: Perbedaan antara revisi

Konten dihapus Konten ditambahkan
Bsetiadi (bicara | kontrib)
Tidak ada ringkasan suntingan
 
Satria996 (bicara | kontrib)
Fitur saranan suntingan: 3 pranala ditambahkan.
Tag: VisualEditor Suntingan perangkat seluler Suntingan peramban seluler Tugas pengguna baru Disarankan: tambahkan pranala
 
(51 revisi perantara oleh 32 pengguna tidak ditampilkan)
Baris 1:
'''Pola desain '''atau '''pola rancangan '''([[bahasa Inggris]]: ''design pattern'') adalah sebuah istilah di dalam [[rekayasa perangkat lunak]] yang mengacu pada solusi umum yang bisa dipergunakan kembali atau berulang-ulang untuk menyelesaikan masalah-masalah yang umum terjadi dalam konteks tertentu atau khusus yang ditemui pada desain perangkat lunak.
Design Pattern (Ilmu Komputer) adalah solusi umum yang sering digunakan untuk menyelesaikan masalah yang ditemukan dalam desain software. Sebuah design pattern tidak berbentuk solusi design yang sudah jadi dan dapat langsung diubah menjadi kode program. Design pattern berisi penjelasan atau template yang menunjukkan bagaimana cara menyelesaikan sebuah masalah yang kemudian dapat digunakan di berbagai situasi yang berbeda-beda. Object-Oriented Design pattern biasanya menunjukkan relasi dan interaksi antar kelas dan objek, tanpa menjelaskan kelas dan objek akhir yang terlibat dalaam sebuah aplikasi. Algoritma biasanya tidak disebut sebagai design pattern, karena algoritma menjadi solusi masalah komputasi bukan masalah design.
 
Pola desain dapat dianalogikan sebagai sebuah resep makanan yang dapat digunakan untuk membuat makanan, tetapi pada kenyataannya selera orang berbeda-beda sehingga untuk menggunkan resep tersebut agar menghasilkan makanan yang enak dan sesuai harus dilakukan penyesuaian dengan kebutuhan dan keadaan. Pola yang sudah dibangun diformulasikan sedemikian rupa untuk menemukan cara terbaik memecahkan masalah, tetapi tetap saja programmer harus menerapkan pola tersebut dengan pendekatan yang sesuai dengan konteks masalah yang sedang dialami, dengan penyesuaian terhadap kebutuhan.
 
Ada banyak jenis pola desain. Contohnya:{{Cn}}
* Pola Strategi [[Algoritma|Algoritme]], yang menangani masalah yang berkaitan dengan strategi tingkat tinggi yang menggambarkan bagaimana memanfaatkan karakteristik aplikasi pada platform komputasi.
* Pola Desain Komputasi, menangani masalah yang berkaitan dengan identifikasi perhitungan kunci atau id.
* Pola Eksekusi, berkaitan dengan hal-hal yang mendukung proses eksekusi aplikasi, termasuk strategi untuk melaksanakan alur tugas dan blok bangunan untuk mendukung tugas sinkronisasi.
* Pola Strategi Implementasi, menangani masalah terkait dengan pelaksanaan kode untuk mendukung organisasi program dan<nowiki> </nowiki>struktur data umum khusus untuk pemrograman paralel.
* Pola Desain Struktural, menangani masalah yang berkaitan dengan struktur tingkat tinggi aplikasi yang dikembangkan.
 
== Sejarah ==
Pola pertama kali digunakan sebagai konsep arsitektur oleh Christopher Alexander (1977-1979) . Pada tahun 1987, Kent Beck dan [[Ward Cunningham]] mulai bereksperimen dengan ide menerapkan pola pemrograman dan mempresentasikan hasil mereka pada konferensi OOPSLA tahun itu. Dalam tahun-tahun berikutnya, Beck, Cunningham dan lain-lain melanjutkan pekerjaan ini.
 
Desain pola mendapatkan popularitas dalam ilmu komputer setelah buku ''Design Patterns: Elements of Reusable Object-Oriented Software'' diterbitkan pada tahun 1994 oleh apa yang disebut "Gang of Four" (Gamma et al.), yang sering disingkat sebagai "GoF". Pada tahun yang sama, Konferensi Pertama Pola [[Bahasa pemrograman|Bahasa Pemrograman]] diadakan dan tahun berikutnya, Portland Pattern Repository didirikan untuk dokumentasi pola desain.
 
== Referensi ==
 
* Gamma, Erich; Richard Helm, Ralph Johnson, and John Vlissides (1995). ''Design Patterns: Elements of Reusable Object-Oriented Software''. Addison-Wesley. ISBN 0-201-63361-2.
* Buschmann, Frank; Regine Meunier, Hans Rohnert, Peter Sommerlad (1996). ''Pattern-Oriented Software Architecture, Volume 1: A System of Patterns''. [[John Wiley & Sons]]. ISBN 0-471-95869-7.
* Schmidt, Douglas C.; Michael Stal, Hans Rohnert, Frank Buschmann (2000). ''Pattern-Oriented Software Architecture, Volume 2: Patterns for Concurrent and Networked Objects''. John Wiley & Sons. ISBN 0-471-60695-2. Fowler, Martin (2002). Patterns of Enterprise Application Architecture. Addison-Wesley. ISBN 978-0-321-12742-6.
* Hohpe, Gregor; Bobby Woolf (2003). ''Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions''. Addison-Wesley. ISBN 0-321-20068-3.
* Freeman, Eric T; Elisabeth Robson, Bert Bates, Kathy Sierra (2004). ''Head First Design Patterns''. O'Reilly Media. ISBN 0-596-00712-4.
 
[[Kategori:Ilmu komputer]]
[[Kategori:Istilah komputer]]