PENGANTAR DESIGN PATTERN Clean Code dan Design Pattern
10/26/2024 CLEAN CODE DAN DESIGN PATTERN - PENGANTAR DESIGN PATTERN 2
What is this?
10/26/2024 CLEAN CODE DAN DESIGN PATTERN - PENGANTAR DESIGN PATTERN 3
10/26/2024 CLEAN CODE DAN DESIGN PATTERN - PENGANTAR DESIGN PATTERN 4
10/26/2024 CLEAN CODE DAN DESIGN PATTERN - PENGANTAR DESIGN PATTERN 5
10/26/2024 CLEAN CODE DAN DESIGN PATTERN - PENGANTAR DESIGN PATTERN 6
ADAKAH POLA YANG MUNCUL DALAM POTONGAN
KODE PROGRAM BERIKUT?
10/26/2024 CLEAN CODE DAN DESIGN PATTERN - PENGANTAR DESIGN PATTERN 7
A simple case
10/26/2024 CLEAN CODE DAN DESIGN PATTERN - PENGANTAR DESIGN PATTERN 8
10/26/2024 CLEAN CODE DAN DESIGN PATTERN - PENGANTAR DESIGN PATTERN 9
10/26/2024 CLEAN CODE DAN DESIGN PATTERN - PENGANTAR DESIGN PATTERN 10
• Bagaimana jika bagian ini berubah?
• Apa yang harus dilakukan pada
implementasinya?
• Bagaimana dengan class turunannya?
10/26/2024 CLEAN CODE DAN DESIGN PATTERN - PENGANTAR DESIGN PATTERN 11
Merancang software itu susah.
Merancang software yang dapat berkembang itu lebih susah lagi.
“
“
10/26/2024 CLEAN CODE DAN DESIGN PATTERN - PENGANTAR DESIGN PATTERN 12
DEFINISI DESIGN PATTERN
o Solusi berulang untuk kasus umum dalam konteks tertentu dan
sistem yang ada (Christopher Alexander)
o Deskripsi dari komunikasi antarobjek dan kelas yang
dikostumisasi untuk mengatasi masalah rancangan umum dalam
konteks tertentu (GoF)
o Dokumentasi dari solusi yang pernah berhasil diaplikasikan untuk
mengatasi masalah yang sering muncul pada situasi tertentu
(Partha Kuchana)
10/26/2024 CLEAN CODE DAN DESIGN PATTERN - PENGANTAR DESIGN PATTERN 13
FUNGSI DESIGN PATTERN
Petunjuk/prosedur dalam penggunaan kembali (reusable) kode
program OOP
 Antar-proyek atau antar-programer
Memberikan gambaran bagaimana objek saling berkomunikasi
 Data maupun method tiap objek tidak saling terikat dengan data maupun
method objek lainnya
10/26/2024 CLEAN CODE DAN DESIGN PATTERN - PENGANTAR DESIGN PATTERN 14
MANFAAT DESIGN PATTERN
Desain perangkat lunak lebih baik dan mudah untuk dimaintain.
Penulisan kode menjadi lebih rapi, terstruktur, dan lebih mudah
dibaca.
Membuat komunikasi antara tim pengembang menjadi lebih
efisien.
10/26/2024 CLEAN CODE DAN DESIGN PATTERN - PENGANTAR DESIGN PATTERN 15
ELEMENT DESIGN PATTERN
Pattern
name
Problem
Solution Consequence
s
10/26/2024 CLEAN CODE DAN DESIGN PATTERN - PENGANTAR DESIGN PATTERN 16
PENGELOMPOKAN DESIGN PATTERN
Creational Patterns
• Berurusan dengan cara terbaik untuk menginstansiasi sebuah objek
Structural Patterns
• Menggambarkan bagimana kelas dan objek dapat dikombinasikan
untuk membentuk struktur yang lebih luas
Behavioral Patterns
• Terkait dengan komunikasi antarobjek
10/26/2024 CLEAN CODE DAN DESIGN PATTERN - PENGANTAR DESIGN PATTERN 17
PENGELOMPOKAN DESIGN PATTERN
Creational Patterns
• Factory
• Abstract factory
• Singleton
• Builder
• Prototype
Structural Patterns
• Adapter
• Bridge
• Composite
• Decorator
• Facade
• Flyweight
• Proxy
Behavioral Patterns
• Chain of responsibility
• Command
• Interpreter
• Iterator
• Mediator
• Memento
• Observer
• State
• Strategy
• Template
• Visitor
10/26/2024 CLEAN CODE DAN DESIGN PATTERN - PENGANTAR DESIGN PATTERN 18
PATTERN YANG DIBAHAS DI MATAKULIAH INI
Adapter Singleton Observer MVP
Facade Factory MVC MVVM
10/26/2024 CLEAN CODE DAN DESIGN PATTERN - PENGANTAR DESIGN PATTERN 19
TERIMA KASIH

CCDP - Pengantar Design Pattern (Introduction)

  • 1.
    PENGANTAR DESIGN PATTERNClean Code dan Design Pattern
  • 2.
    10/26/2024 CLEAN CODEDAN DESIGN PATTERN - PENGANTAR DESIGN PATTERN 2 What is this?
  • 3.
    10/26/2024 CLEAN CODEDAN DESIGN PATTERN - PENGANTAR DESIGN PATTERN 3
  • 4.
    10/26/2024 CLEAN CODEDAN DESIGN PATTERN - PENGANTAR DESIGN PATTERN 4
  • 5.
    10/26/2024 CLEAN CODEDAN DESIGN PATTERN - PENGANTAR DESIGN PATTERN 5
  • 6.
    10/26/2024 CLEAN CODEDAN DESIGN PATTERN - PENGANTAR DESIGN PATTERN 6 ADAKAH POLA YANG MUNCUL DALAM POTONGAN KODE PROGRAM BERIKUT?
  • 7.
    10/26/2024 CLEAN CODEDAN DESIGN PATTERN - PENGANTAR DESIGN PATTERN 7 A simple case
  • 8.
    10/26/2024 CLEAN CODEDAN DESIGN PATTERN - PENGANTAR DESIGN PATTERN 8
  • 9.
    10/26/2024 CLEAN CODEDAN DESIGN PATTERN - PENGANTAR DESIGN PATTERN 9
  • 10.
    10/26/2024 CLEAN CODEDAN DESIGN PATTERN - PENGANTAR DESIGN PATTERN 10 • Bagaimana jika bagian ini berubah? • Apa yang harus dilakukan pada implementasinya? • Bagaimana dengan class turunannya?
  • 11.
    10/26/2024 CLEAN CODEDAN DESIGN PATTERN - PENGANTAR DESIGN PATTERN 11 Merancang software itu susah. Merancang software yang dapat berkembang itu lebih susah lagi. “ “
  • 12.
    10/26/2024 CLEAN CODEDAN DESIGN PATTERN - PENGANTAR DESIGN PATTERN 12 DEFINISI DESIGN PATTERN o Solusi berulang untuk kasus umum dalam konteks tertentu dan sistem yang ada (Christopher Alexander) o Deskripsi dari komunikasi antarobjek dan kelas yang dikostumisasi untuk mengatasi masalah rancangan umum dalam konteks tertentu (GoF) o Dokumentasi dari solusi yang pernah berhasil diaplikasikan untuk mengatasi masalah yang sering muncul pada situasi tertentu (Partha Kuchana)
  • 13.
    10/26/2024 CLEAN CODEDAN DESIGN PATTERN - PENGANTAR DESIGN PATTERN 13 FUNGSI DESIGN PATTERN Petunjuk/prosedur dalam penggunaan kembali (reusable) kode program OOP  Antar-proyek atau antar-programer Memberikan gambaran bagaimana objek saling berkomunikasi  Data maupun method tiap objek tidak saling terikat dengan data maupun method objek lainnya
  • 14.
    10/26/2024 CLEAN CODEDAN DESIGN PATTERN - PENGANTAR DESIGN PATTERN 14 MANFAAT DESIGN PATTERN Desain perangkat lunak lebih baik dan mudah untuk dimaintain. Penulisan kode menjadi lebih rapi, terstruktur, dan lebih mudah dibaca. Membuat komunikasi antara tim pengembang menjadi lebih efisien.
  • 15.
    10/26/2024 CLEAN CODEDAN DESIGN PATTERN - PENGANTAR DESIGN PATTERN 15 ELEMENT DESIGN PATTERN Pattern name Problem Solution Consequence s
  • 16.
    10/26/2024 CLEAN CODEDAN DESIGN PATTERN - PENGANTAR DESIGN PATTERN 16 PENGELOMPOKAN DESIGN PATTERN Creational Patterns • Berurusan dengan cara terbaik untuk menginstansiasi sebuah objek Structural Patterns • Menggambarkan bagimana kelas dan objek dapat dikombinasikan untuk membentuk struktur yang lebih luas Behavioral Patterns • Terkait dengan komunikasi antarobjek
  • 17.
    10/26/2024 CLEAN CODEDAN DESIGN PATTERN - PENGANTAR DESIGN PATTERN 17 PENGELOMPOKAN DESIGN PATTERN Creational Patterns • Factory • Abstract factory • Singleton • Builder • Prototype Structural Patterns • Adapter • Bridge • Composite • Decorator • Facade • Flyweight • Proxy Behavioral Patterns • Chain of responsibility • Command • Interpreter • Iterator • Mediator • Memento • Observer • State • Strategy • Template • Visitor
  • 18.
    10/26/2024 CLEAN CODEDAN DESIGN PATTERN - PENGANTAR DESIGN PATTERN 18 PATTERN YANG DIBAHAS DI MATAKULIAH INI Adapter Singleton Observer MVP Facade Factory MVC MVVM
  • 19.
    10/26/2024 CLEAN CODEDAN DESIGN PATTERN - PENGANTAR DESIGN PATTERN 19 TERIMA KASIH