1. konsep pbo

Post on 14-Apr-2017

501 Views

Category:

Technology

9 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Pemrograman Berorientasi Obyek

PERTEMUAN 1

AVIV YUNIAR RAHMAN, ST

Catatan Kontrak Kuliah : UTS : 35 % UAS : 35% TUGAS 1 & 2 : (30 %) Koordinator Kelas : Reg a. Ridho

(085755925001) Reg b. Maulana (089673661441)

Structured vs Object-Oriented Structured

Pendekatan masalah berorientasi pada aksi atau data

Object-OrientedPendekatan masalah berorientasi pada aksi dan data

Contoh Structured vs Object-Oriented

Tujuan Umum : Mahasiswa mampu menganalisa dan

mendesain sistem yang berbasiskan pada prinsip-prinsip obyek.

Sub Pokok Bahasan Pertemuan 1 Teknologi Obyek Konsep Berorientasi Obyek- Abstraksi (abstraction)- Pewarisan (Inheritance)- Polimorfisme banyakrupa (Polymorphism)- Pembungkusan (encapsulation)- Asosiasi- Agregasi

Konsep Object• Dalam paradigma berbasis object, “object” adalah

representasi sebuah entitas yang memiliki makna tertentu yang menjadi perhatian si pemandang object memiliki abstraksi tertentu bagi si pemandang Contoh: dalam sistem akademik di kampus, beberapa

kandidat object adalah: mahasiswa, dosen, kelas, mata kuliah, kurikulum, praktikum, laboratorium, perpustakaan, KRS, KHS, …

• Object dapat menerima pesan (message), mengolah data, dan mengirimkan pesan ke object lain membentuk interaksi antar object

• Object bersifat independen: tiap object dapat dipandang sebagai sebuah entitas mandiri yang memiliki peran atau tanggung jawab tertentu

Objek Obyek – sesuatu yang dapat dilihat, disentuh atau

dirasakan dan digunakan pengguna serta akan disimpan data dan perilakunya. Bisa berupa: Orang, tempat, benda atau kejadian Pegawai, pelanggan, guru, dosen, mahasiswa, murid. Gudang, kantor, bangunan, ruangan. Kendaraan, produk, konputer, video.

Atribut – data yang menyatakan sifat dari obyek

Object dan Interaksinya

pembeli kasir pelayan

pesan & bayar

siapkan burger

siapkan kentang

siapkan minum

sajikan

Skenario: restoran cepat-saji

ObjectSebuah instance (perwujudan nyata) dari suatu kelas tertentu

public class SegiEmpat { int panjang; int lebar; string warna;

public SegiEmpat(string w, int p, int l) { panjang = p; lebar = l; warna = w; }

public setWarna (string w) { warna = w; }}

SegiEmpat sPink = new SegiEmpat(“pink”, 20,10);

SegiEmpat sPutih = new SegiEmpat(“putih”, 15,10);

SegiEmpat sOrange = new SegiEmpat(“orange”, 30,15);

Konsep-Konsep dalam OOP: Kelas (Class) Mendefinisikan karakteristik abstrak dari sebuah

entitas Property (statis) – fields, atribut Behaviour (dinamika) – fitur, methods Contoh: abstraksi “sepeda” memiliki property “punya

roda”, “punya rantai”, dsb., dan behaviour “bisa berjalan”, “bisa berbelok”, dsb.

Sebagai abstraksi dari sebuah entitas, definisi kelas harus mencerminkan karakteristik sebenarnya dari entitas tsb.

Kelas Kelas merupakan “cetakan” (template) untuk instance (wujud nyata) entitas-entitas yang direpresentasikannya Sebuah kelas dapat melahirkan lebih dari satu instance

satu template

banyak instance(wujud nyata)

Tingkah laku Tingkah laku (behavior) – hal-hal yang

dapat dikerjakan obyek dan merupakan fungsi yang dikenakan pada data (atribut) dari obyek tersebut.

Dalam paradigma OO, perilaku obyek disebut metode, operasi, atau layanan (method,operation, or service).

Contoh: Class, object, atributtes dan behavior

Pemrograman BerorientasiObyek (PBO) C++ Java Visual Basic .net Delphi dll..

Ide dasar PBO Mengkombinasikan data dan fungsi/atribut

untuk mengakses data menjadi sebuah kesatuan unit.

Memahami istilah dalam OOP / PBO Obyek : komponen di dalam sebuah

program Property : karakteristik yang dimiliki

obyek Method : aksi yang dapat dilakukan oleh

obyek Event : kejadian yang dapat di alami oleh

obyek

abstraksi Prinsip untuk merepresentasikan dunia nvata

yang kompleks menjadi satu bentuk model yang sederhana dengan mengabaikan aspek-aspek lain yang tidak sesuai dengan permasalahan.

Secara sederhana dikatakan membuang atribut obyek dan operasi yang hanya sampai pada yang benar-benar diperlukan.

Contoh Abstraksi Program mesin cuci → tidak butuh serial

number Program transaksi laundry → butuh serial

number Obyek sama-sama mesin cuci

Contoh Abstraksi Pada Program Contoh berikut akan menjelaskan penggunaan class abstrak dalam

pemrograman Objek dalam Java. Kelas abstrak yang dibuat adalah kelas Animal, kemudian dengan dua jenis variabel, jumlah kaki dan warna. Ditambahkan method berdasarkan cara jalan dan suaranya.

public abstract class Hewan { private int jmlKaki; private Color warna; public abstract void jalan(); public abstract void suara(); }

Inheritance (Pewarisan) Adalah konsep yang menyatakan bahwa

metode atau atribut dalam kelas dapat diturunkan atau digunakan kembali oleh kelas lain.

Generalisasi,Supertype, dan Subtype Generalisasi/spesialisasi – atribut dan perilaku

yang sama untuk beberapa kelas dikelompokkan ke dalam kelas tersendiri yang disebut supertype.

Supertype – entitas yang berisi atribut dan perilaku yang sama untuk satu atau lebih subtipe kelas. Juga disebut parent class.

Subtype – kelas yang mewarisi (inherit) atribut dan perilaku dari kelas supertype serta mungkin juga berisi atribut dan perilaku lain yang khusus. Juga disebut kelas anak (child). Jika berada pada tingkat yang paling rendah dalam hirarki pewarisan, akan disebut kelas konkret (concrete)

Contoh Inheritance (Pewarisan)

Contoh Inheritance (Pewarisan)“bentuk”

poligon ellips

lingkaran

persegipanjang

segitiga

bujursangkar

Contoh Inheritance (Pewarisan)

Pewarisan (cont’d)

Contoh Program Pewarisan Menggunakan Java

Contoh Program Pewarisan Lanjutan 1

Contoh Program Pewarisan Lanjutan 2

Contoh Program Pewarisan Lanjutan 3

Hasil Program Pewarisan

Polimorfisme banyak rupa (Polimorphism) Arti : mempunyai banyak bentuk Merupakan

suatu konsep yang menyatakan sesuatu yang sama dapat memiliki berbagai bentuk dan perilaku yang berbeda.

Contoh Polimorphism pada C++ dapat dikenakan

pada fungsi atau operator dan di kenal dengan overloading.

Berikut fungsi dengan nama gambar : gambar(x,y); Menggambar titik gambar(x1,y1,x2,y2); Menggambar garis gambar(x,y,5); Menggambar lingkaran

Pembungkusan (encapsulation) Adalah pembungkusan/pengemasan data

dan fungsi dalam wadah bernama obyek. atau...Menyembunyikan operasi-operasi dari

dunia luar dan dari obyek-obyek lain

Contoh Encapsulation Televisi :

- Tampak luar hanya layar dan beberapa tombol operasi

- Di dalam terkandung kompleksitas rangkaian elektronika

Tingkat Akses Private ( Encapsulation- Private)

Gambar 1

Gambar 2

NO NO

NONO

Tingkat Akses Private ( Encapsulation- Protected)

OK OK

OKNO

Tingkat Akses Public (Encapsulation-Public)

OK OK

OK OK

Asosisasi (Asosiasion) Merupakan relasi atau hubungan obyek satu

dengan lainnya. Sebuah obyek dapat berelasi dengan obyek

yang lain

Contoh Asosisasi (Asosiasion) Contoh : Seorang

pegawai bekerja pada sebuah perusahaan. 

Maka “bekerja” merupakan sebuah asosiasi antara kelas pegawai dan kelas perusahaan

Agregasi Agregasi – sebuah relasi yang

menyatakan bahwa satu kelas “utuh (whole)” yang lebih besar memuat satu atau lebih kelas “bagian (part)” yang lebih kecil. Sebaliknya, kelas “bagian” adalah bagian dari kelas “utuh”

Dalam UML 2.0 notasi agregasi sudah tidak dipakai lagi

Contoh Agregasi Dalam dunia nyatanya adalah object pemain

bola dan klub bola dimana pemain bola bisa tetap ada walau tidak ada klub bola

Contoh Program Agregasi public class pemainbola {protected String nama;protected String Alamat;public pemainbola ( String nama, String alamat){this.nama=nama;this.alamat=alamat}}

Contoh Program Agregasi Lanjutan 1public class klubbola{protected String nama;protected pemainbola pemainno1;public klubbola( String nama);public void setpemainsatu(pemainbola pemain){this.pemainno1=pemain;}}

Contoh Program Agregasi Lanjutan 2public void main(){klubbola juventus = new klubbola(“Juventus”);pemainbola orang1 = new pemainbola(“Del Piero”,”Sukabirus”);juventus.setpemainsatu(orang1);}

top related