PBO MODUL 11 DESIGN PATTERN 1 (COMPOSITE) PDF

Title PBO MODUL 11 DESIGN PATTERN 1 (COMPOSITE)
Author Tri Yuni
Pages 6
File Size 169.7 KB
File Type PDF
Total Downloads 876
Total Views 946

Summary

MODUL 11 DESIGN PATTERN : COMPOSITE TUJUAN Setelah menyelesaikan modul ini, praktikan dapat: Memahami konsep Composite. Mengimplementasikan Design Pattern Composite dalam bahasa java. DASAR TEORI Pengertian Design Pattern Design Patterns adalah sebuah solusi untuk menyelesaikan masalah dalam suatu p...


Description

MODUL 11 DESIGN PATTERN : COMPOSITE TUJUAN Setelah menyelesaikan modul ini, praktikan dapat: Memahami konsep Composite. Mengimplementasikan Design Pattern Composite dalam bahasa java.

DASAR TEORI Pengertian Design Pattern Design Patterns adalah sebuah solusi untuk menyelesaikan masalah dalam suatu program, yang membentuk sebuah pola (pattern) tertentu. Design Pattern dibagi menjadi tiga: 1. Creational design patterns Berhubungan dengan proses pembuatan objek. 2. Structural design patterns Menangani komposisi kelas atau objek. 3. Behavioral design patterns Bagaimana kelas atau objek saling berinteraksi/berkomunikasi.

Creational

Structural

Abstract Factory

Adapter

Builder

Bridge

Factory Method

Composite

Object Pool

Decorator

Prorotype

Facede

Singleton

Flyweight Proxy

Behavioral Chain of Responsibility Command Interpreter Iterator Mediator Observer Strategy

1

Praktikum Pemrograman Berorientasi Objek | Modul 11

Dalam modul ini kita akan menggunakan salah satu pattern dari Structural Design Patterns yaitu Composite. Pengertian Composite Composite adalah pattern yang menggambarkan bahwa sekelompok objek harus diperlakukan dengan cara yang sama sebagai satu contoh dari obyek. Misalnya merepresentasikan objek ke dalam struktur pohon untuk mewakili bagiankeseluruhan hirarki.

Gambar 11.1 Struktur Design Pattern Composite

2

Praktikum Pemrograman Berorientasi Objek | Modul 11

DEMO PROGRAM 1. Buat GUI Seperti gambar. Pada ComboBox terdapat 2 item “Production Manager” dan “Accounting Manager”.

2. Buat Kelas Emplooyee.java dan Manager.java. Employee.java public class Employee { private String name; private double salary; public Employee(){ } public Employee(String n, double s){ setName(n); setSalary(s); } public void setName(String name) { this.name = name; } public void setSalary(double salary) { this.salary = salary; } 3

Praktikum Pemrograman Berorientasi Objek | Modul 11

public String getName() { return name; } public double getSalary() { return salary; } public String toString() { return "Employee "+getName(); } }

Manager.java public class Manager { private Manager mgr; private Vector employee; private String dept; public Manager() { } public Manager(Manager mgr, Vector e, String d) { this(e, d); setMgr(mgr); } public Manager(Vector e, String d) { setEmployee(e); setDept(d); } public void setDept(String dept) { this.dept = dept; } public void setMgr(Manager mgr) { this.mgr = mgr; } public void setEmployee(Vector employee) { this.employee = employee; } public Vector getEmployee() { return employee; }

4

Praktikum Pemrograman Berorientasi Objek | Modul 11

public String getDept() { return dept; } public Manager getMgr() { return mgr; } public String toString() { return getDept()+" manager"; } }

3. Pada Form Composite.java tambahkan code berikut. Vector vector_e1, vector_e2; Employee e1,e2; Manager m1, m2; String show1="", show2=""; public Composite() { initComponents(); vector_e1 = new Vector(); vector_e2 = new Vector(); e1 = new Employee(); e2 = new Employee(); inisialisasiPegawai(); } private void showBTActionPerformed(java.awt.event.ActionEvent evt) { String nama = namaPegawai.getText(); String jabatanPegawai = jabatan.getSelectedItem().toString(); String gaji = salary.getText(); if(jabatan.getSelectedIndex()==1){ e1.setName(nama); e1.setSalary(Double.parseDouble(gaji)); vector_e1.add(e1); m1 = new Manager(vector_e1, jabatanPegawai); }else{ e2.setName(nama); e2.setSalary(Double.parseDouble(gaji)); vector_e2.add(e2); m2 = new Manager(m1, vector_e2, jabatanPegawai); }

5

Praktikum Pemrograman Berorientasi Objek | Modul 11

if(m2!=null) { Vector emp = m2.getEmployee(); if (emp != null){ for(int k=0;k...


Similar Free PDFs