Home - akmalrusli363/fla-design-patterns GitHub Wiki

The series of design patterns in COMP6122 - Framework Layer Architectures.

CATATAN: Dokumentasi dalam GitHub Wiki ini masih belum lengkap dan memerlukan adaptasi dari laman GitHub Pages. Untuk penjelasan lengkap dan terupdate, silakan cek di laman GitHub Pages.

Hai teman-teman, selamat datang di GitHub Wiki Framework Layer Architectures (FLA)! Kali ini saya kembali menuliskan ringkasan materi-materi FLA melalui Repository, Wiki, dan GitHub Pages dengan 100% asli hasil pembelajaran saya.

Oh iya, perkenalkan "Oh-My-Patt!", sebuah laman Design Pattern berbahasa Indonesia dimana anda akan terjun ke dalam alam dunia Design Pattern dengan penyajian materi yang menarik & lengkap melalui project ini.

Oh-My-Patt! Design Patterns merupakan Repository, Wiki & GitHub Pages yang berisikan kumpulan design patterns dalam Framework Layer Architectures.

Materi Design Pattern ini sebagian diambil dari buku "Design Patterns: Elements of Reusable Object-Oriented Software" alias Gang of Four Design Patterns yang ditulis oleh Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides.

Design Pattern terbagi menjadi 3 bagian:

  1. Creational Design Patterns
  2. Structural Design Patterns
  3. Behavioral Design Patterns

Creational Design Patterns

Merupakan design pattern yang berperan dalam pembuatan object maupun deklarasi object untuk mempermudah pemakaian kembali code dan meningkatkan fleksibilitas dalam hierarki class.

Ada 5 jenis creational design patterns:

  1. Singleton
  2. Factory Method
  3. Abstract Method
  4. Builder
  5. Prototype

Structural Design Patterns

Merupakan design pattern yang berperan dalam strukturisasi object untuk memudahkan skalabilitas (scalability) dengan menjamin fleksibilitas dan efisiensi dari class itu sendiri.

Ada 7 jenis structual design patterns:

  1. Adapter
  2. Bridge
  3. Composite
  4. Decorator
  5. Facade
  6. Flyweight
  7. Proxy

Behavioral Design Patterns

Merupakan design pattern yang melibatkan fungsionalitas dalam suatu class baik pemakaian algoritma maupun relasi antar class/object.

Ada 10 jenis behavioral design patterns:

  1. Chain of Responsibility
  2. Command
  3. Iterator
  4. Mediator
  5. Memento
  6. Observer
  7. State
  8. Strategy
  9. Template Method
  10. Visitor

Catatan ringan

Kalian juga bisa Bookmark, beri Bintang/Star, Fork, buat Issue/Pull Request, maupun berkontribusi ke project ini karena saya akan melakukan update secara rutin pada Repository, Wiki, dan GitHub Pages mengenai Design Pattern selama proses pembelajaran saya ya! :wink:

Referensi

Kalian dapat menyimak materi yang telah dibahas pada laman ini dengan membaca kembali sumber referensi yang ada (baik sumber utama maupun sumber-sumber tambahan dari topik tertentu) untuk menambah wawasan tambahan anda mengenai dunia design pattern.

Penting untuk kalian ketahui bahwa dua sumber online utama, Refactoring.guru dan Sourcemaking.com, menyajikan cara implementasi dan pembahasan yang berbeda. Oleh sebabnya, ada baiknya bagi anda untuk membaca kedua sumber tersebut untuk menjamin bahwa konsep yang diterapkan benar-benar sesuai konsep dan pemahaman.