SlideShare a Scribd company logo
1 of 46
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-Oriented
Pendekatan 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
Object
Sebuah 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 Berorientasi
Obyek (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
persegi
panjang
segitiga
bujur
sangkar
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 1
public class klubbola
{
protected String nama;
protected pemainbola pemainno1;
public klubbola( String nama);
public void setpemainsatu(pemainbola pemain)
{
this.pemainno1=pemain;
}
}
Contoh Program Agregasi
Lanjutan 2
public void main()
{
klubbola juventus = new klubbola(“Juventus”);
pemainbola orang1 = new pemainbola(“Del
Piero”,”Sukabirus”);
juventus.setpemainsatu(orang1);
}

More Related Content

What's hot

Prosedur penyusunan rencana bimbingan klasikal
Prosedur penyusunan rencana bimbingan klasikalProsedur penyusunan rencana bimbingan klasikal
Prosedur penyusunan rencana bimbingan klasikalSunawan Sunawan
 
Kasus kasus sosped, kelompok 1 agt-c
Kasus kasus sosped, kelompok 1 agt-cKasus kasus sosped, kelompok 1 agt-c
Kasus kasus sosped, kelompok 1 agt-chelenapakpahan
 
Pengolahan Citra 3 - Operasi-operasi Digital
Pengolahan Citra 3 - Operasi-operasi DigitalPengolahan Citra 3 - Operasi-operasi Digital
Pengolahan Citra 3 - Operasi-operasi DigitalNur Fadli Utomo
 
Menggambar ilustrasi
Menggambar ilustrasiMenggambar ilustrasi
Menggambar ilustrasiYarithTialen1
 
Komponen komponen kurikulum
Komponen komponen kurikulumKomponen komponen kurikulum
Komponen komponen kurikulumchytra Daud
 
[RPL2] Class Diagram dan Konsep Object Oriented (1)
[RPL2] Class Diagram dan Konsep Object Oriented (1)[RPL2] Class Diagram dan Konsep Object Oriented (1)
[RPL2] Class Diagram dan Konsep Object Oriented (1)rizki adam kurniawan
 
4 diagram relasi antar entitas (ERD)
4 diagram relasi antar entitas (ERD)4 diagram relasi antar entitas (ERD)
4 diagram relasi antar entitas (ERD)Simon Patabang
 
Model dan desain kurikulum
Model dan desain kurikulumModel dan desain kurikulum
Model dan desain kurikulumidhessara
 
Teknologi Image Processing
Teknologi Image ProcessingTeknologi Image Processing
Teknologi Image Processingsoftskillkel3
 
Karakteristik pembelajran IPS di Sd kelas tinggi Risa Zakiatul H. ^_^
Karakteristik pembelajran IPS di Sd kelas tinggi Risa Zakiatul H. ^_^Karakteristik pembelajran IPS di Sd kelas tinggi Risa Zakiatul H. ^_^
Karakteristik pembelajran IPS di Sd kelas tinggi Risa Zakiatul H. ^_^Rissa ZH
 
jenis-jenis layanan bimbingan
jenis-jenis layanan bimbingan jenis-jenis layanan bimbingan
jenis-jenis layanan bimbingan Shofa Ar-Rahmat
 
Pertemuan 1 konsep dasar pemrograman berorientasi objek
Pertemuan 1 konsep dasar pemrograman berorientasi objekPertemuan 1 konsep dasar pemrograman berorientasi objek
Pertemuan 1 konsep dasar pemrograman berorientasi objekI Putu Arya Dharmaadi
 
Struktur direktori
Struktur direktoriStruktur direktori
Struktur direktoriAnggi DHARMA
 
Pengolahan Citra 2 - Pembentukan Citra Digital
Pengolahan Citra 2 - Pembentukan Citra DigitalPengolahan Citra 2 - Pembentukan Citra Digital
Pengolahan Citra 2 - Pembentukan Citra DigitalNur Fadli Utomo
 
03 enkapsulasi
03 enkapsulasi03 enkapsulasi
03 enkapsulasiKuliahKita
 
Struktur sosial, pranata sosial dan proses sosial Konsep Dasar IPS PGSD FKIP ...
Struktur sosial, pranata sosial dan proses sosial Konsep Dasar IPS PGSD FKIP ...Struktur sosial, pranata sosial dan proses sosial Konsep Dasar IPS PGSD FKIP ...
Struktur sosial, pranata sosial dan proses sosial Konsep Dasar IPS PGSD FKIP ...Lili Puspita Sari
 
Modul Pemrograman Berorientasi Objek
Modul Pemrograman Berorientasi ObjekModul Pemrograman Berorientasi Objek
Modul Pemrograman Berorientasi ObjekWahyu Widodo
 

What's hot (20)

Prosedur penyusunan rencana bimbingan klasikal
Prosedur penyusunan rencana bimbingan klasikalProsedur penyusunan rencana bimbingan klasikal
Prosedur penyusunan rencana bimbingan klasikal
 
[RPL2] Activity Diagram
[RPL2] Activity Diagram[RPL2] Activity Diagram
[RPL2] Activity Diagram
 
Kasus kasus sosped, kelompok 1 agt-c
Kasus kasus sosped, kelompok 1 agt-cKasus kasus sosped, kelompok 1 agt-c
Kasus kasus sosped, kelompok 1 agt-c
 
Pengolahan Citra 3 - Operasi-operasi Digital
Pengolahan Citra 3 - Operasi-operasi DigitalPengolahan Citra 3 - Operasi-operasi Digital
Pengolahan Citra 3 - Operasi-operasi Digital
 
Menggambar ilustrasi
Menggambar ilustrasiMenggambar ilustrasi
Menggambar ilustrasi
 
Komponen komponen kurikulum
Komponen komponen kurikulumKomponen komponen kurikulum
Komponen komponen kurikulum
 
[RPL2] Class Diagram dan Konsep Object Oriented (1)
[RPL2] Class Diagram dan Konsep Object Oriented (1)[RPL2] Class Diagram dan Konsep Object Oriented (1)
[RPL2] Class Diagram dan Konsep Object Oriented (1)
 
4 diagram relasi antar entitas (ERD)
4 diagram relasi antar entitas (ERD)4 diagram relasi antar entitas (ERD)
4 diagram relasi antar entitas (ERD)
 
Materi CSS Dasar
Materi CSS DasarMateri CSS Dasar
Materi CSS Dasar
 
Model dan desain kurikulum
Model dan desain kurikulumModel dan desain kurikulum
Model dan desain kurikulum
 
Teknologi Image Processing
Teknologi Image ProcessingTeknologi Image Processing
Teknologi Image Processing
 
[PBO] Pertemuan 4 - Getter Setter
[PBO] Pertemuan 4 - Getter Setter[PBO] Pertemuan 4 - Getter Setter
[PBO] Pertemuan 4 - Getter Setter
 
Karakteristik pembelajran IPS di Sd kelas tinggi Risa Zakiatul H. ^_^
Karakteristik pembelajran IPS di Sd kelas tinggi Risa Zakiatul H. ^_^Karakteristik pembelajran IPS di Sd kelas tinggi Risa Zakiatul H. ^_^
Karakteristik pembelajran IPS di Sd kelas tinggi Risa Zakiatul H. ^_^
 
jenis-jenis layanan bimbingan
jenis-jenis layanan bimbingan jenis-jenis layanan bimbingan
jenis-jenis layanan bimbingan
 
Pertemuan 1 konsep dasar pemrograman berorientasi objek
Pertemuan 1 konsep dasar pemrograman berorientasi objekPertemuan 1 konsep dasar pemrograman berorientasi objek
Pertemuan 1 konsep dasar pemrograman berorientasi objek
 
Struktur direktori
Struktur direktoriStruktur direktori
Struktur direktori
 
Pengolahan Citra 2 - Pembentukan Citra Digital
Pengolahan Citra 2 - Pembentukan Citra DigitalPengolahan Citra 2 - Pembentukan Citra Digital
Pengolahan Citra 2 - Pembentukan Citra Digital
 
03 enkapsulasi
03 enkapsulasi03 enkapsulasi
03 enkapsulasi
 
Struktur sosial, pranata sosial dan proses sosial Konsep Dasar IPS PGSD FKIP ...
Struktur sosial, pranata sosial dan proses sosial Konsep Dasar IPS PGSD FKIP ...Struktur sosial, pranata sosial dan proses sosial Konsep Dasar IPS PGSD FKIP ...
Struktur sosial, pranata sosial dan proses sosial Konsep Dasar IPS PGSD FKIP ...
 
Modul Pemrograman Berorientasi Objek
Modul Pemrograman Berorientasi ObjekModul Pemrograman Berorientasi Objek
Modul Pemrograman Berorientasi Objek
 

Similar to OOP1

Pertemuan 13 Object Oriented Program (OOP)
Pertemuan 13 Object Oriented Program (OOP)Pertemuan 13 Object Oriented Program (OOP)
Pertemuan 13 Object Oriented Program (OOP)Endang Retnoningsih
 
Presentation1.pdf
Presentation1.pdfPresentation1.pdf
Presentation1.pdfRobbyCokro1
 
Hardini 3201416015 3_b
Hardini 3201416015 3_b Hardini 3201416015 3_b
Hardini 3201416015 3_b Hardini_HD
 
Pertemuan 3-apbo-oo-concept
Pertemuan 3-apbo-oo-conceptPertemuan 3-apbo-oo-concept
Pertemuan 3-apbo-oo-conceptAbi Bobon
 
Konsep Oop
Konsep OopKonsep Oop
Konsep Oopformatik
 
T1 - Konsep Pemrograman Berorientasi Obyek.ppt
T1 - Konsep Pemrograman Berorientasi Obyek.pptT1 - Konsep Pemrograman Berorientasi Obyek.ppt
T1 - Konsep Pemrograman Berorientasi Obyek.pptxirplsmksa
 
perancangan berorientasi objek
perancangan berorientasi objekperancangan berorientasi objek
perancangan berorientasi objekDoni Sanjaya
 
Pemrograman Berorientasi Objek (PBO).pptx
Pemrograman Berorientasi Objek (PBO).pptxPemrograman Berorientasi Objek (PBO).pptx
Pemrograman Berorientasi Objek (PBO).pptxAjiSaktiKurniawan
 
OOP - Kelas dan Objek
OOP - Kelas dan ObjekOOP - Kelas dan Objek
OOP - Kelas dan ObjekKuliahKita
 
OOP - Kelas dan Objek
OOP - Kelas dan ObjekOOP - Kelas dan Objek
OOP - Kelas dan ObjekKuliahKita
 
Modul 4 representasi pengetahuan
Modul 4   representasi pengetahuanModul 4   representasi pengetahuan
Modul 4 representasi pengetahuanahmad haidaroh
 
Representasi Pengetahuan
Representasi PengetahuanRepresentasi Pengetahuan
Representasi PengetahuanSherly Uda
 
Pengantar Pengembangan Sistem Berorientasi Objek.pptx
Pengantar Pengembangan Sistem Berorientasi Objek.pptxPengantar Pengembangan Sistem Berorientasi Objek.pptx
Pengantar Pengembangan Sistem Berorientasi Objek.pptxDzulFadliRahman1
 
Pemograman berorientasi objek
Pemograman berorientasi objekPemograman berorientasi objek
Pemograman berorientasi objekNamira Namirah
 

Similar to OOP1 (20)

OOP
OOPOOP
OOP
 
Pbo1 1
Pbo1 1Pbo1 1
Pbo1 1
 
Pertemuan 13 Object Oriented Program (OOP)
Pertemuan 13 Object Oriented Program (OOP)Pertemuan 13 Object Oriented Program (OOP)
Pertemuan 13 Object Oriented Program (OOP)
 
Presentation1.pdf
Presentation1.pdfPresentation1.pdf
Presentation1.pdf
 
Hardini 3201416015 3_b
Hardini 3201416015 3_b Hardini 3201416015 3_b
Hardini 3201416015 3_b
 
Pertemuan 3-apbo-oo-concept
Pertemuan 3-apbo-oo-conceptPertemuan 3-apbo-oo-concept
Pertemuan 3-apbo-oo-concept
 
Konsep Oop
Konsep OopKonsep Oop
Konsep Oop
 
T1 - Konsep Pemrograman Berorientasi Obyek.ppt
T1 - Konsep Pemrograman Berorientasi Obyek.pptT1 - Konsep Pemrograman Berorientasi Obyek.ppt
T1 - Konsep Pemrograman Berorientasi Obyek.ppt
 
perancangan berorientasi objek
perancangan berorientasi objekperancangan berorientasi objek
perancangan berorientasi objek
 
Apsi 1
Apsi 1Apsi 1
Apsi 1
 
Pemrograman Berorientasi Objek (PBO).pptx
Pemrograman Berorientasi Objek (PBO).pptxPemrograman Berorientasi Objek (PBO).pptx
Pemrograman Berorientasi Objek (PBO).pptx
 
OOP - Kelas dan Objek
OOP - Kelas dan ObjekOOP - Kelas dan Objek
OOP - Kelas dan Objek
 
OOP - Kelas dan Objek
OOP - Kelas dan ObjekOOP - Kelas dan Objek
OOP - Kelas dan Objek
 
4_Class Diagram.pdf
4_Class Diagram.pdf4_Class Diagram.pdf
4_Class Diagram.pdf
 
1. Pengantar Objek.ppt
1. Pengantar Objek.ppt1. Pengantar Objek.ppt
1. Pengantar Objek.ppt
 
Modul 4 representasi pengetahuan
Modul 4   representasi pengetahuanModul 4   representasi pengetahuan
Modul 4 representasi pengetahuan
 
Representasi Pengetahuan
Representasi PengetahuanRepresentasi Pengetahuan
Representasi Pengetahuan
 
Pengantar Pengembangan Sistem Berorientasi Objek.pptx
Pengantar Pengembangan Sistem Berorientasi Objek.pptxPengantar Pengembangan Sistem Berorientasi Objek.pptx
Pengantar Pengembangan Sistem Berorientasi Objek.pptx
 
Konsep dasar oop
Konsep dasar oopKonsep dasar oop
Konsep dasar oop
 
Pemograman berorientasi objek
Pemograman berorientasi objekPemograman berorientasi objek
Pemograman berorientasi objek
 

OOP1

  • 2. Catatan  Kontrak Kuliah :  UTS : 35 %  UAS : 35%  TUGAS 1 & 2 : (30 %)  Koordinator Kelas : Reg a. Ridho (085755925001)  Reg b. Maulana (089673661441)
  • 3. Structured vs Object-Oriented  Structured Pendekatan masalah berorientasi pada aksi atau data  Object-Oriented Pendekatan masalah berorientasi pada aksi dan data
  • 4. Contoh Structured vs Object- Oriented
  • 5. Tujuan Umum :  Mahasiswa mampu menganalisa dan mendesain sistem yang berbasiskan pada prinsip-prinsip obyek.
  • 6. Sub Pokok Bahasan Pertemuan 1  Teknologi Obyek  Konsep Berorientasi Obyek - Abstraksi (abstraction) - Pewarisan (Inheritance) - Polimorfisme banyakrupa (Polymorphism) - Pembungkusan (encapsulation) - Asosiasi - Agregasi
  • 7. 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
  • 8. 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
  • 9. Object dan Interaksinya pembeli kasir pelayan pesan & bayar siapkan burger siapkan kentang siapkan minum sajikan Skenario: restoran cepat-saji
  • 10. Object Sebuah 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);
  • 11. 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.
  • 12. 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)
  • 13. 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).
  • 14. Contoh: Class, object, atributtes dan behavior
  • 15. Pemrograman Berorientasi Obyek (PBO)  C++  Java  Visual Basic .net  Delphi  dll..
  • 16. Ide dasar PBO  Mengkombinasikan data dan fungsi/atribut untuk mengakses data menjadi sebuah kesatuan unit.
  • 17. 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
  • 18.
  • 19. 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.
  • 20. Contoh Abstraksi  Program mesin cuci → tidak butuh serial number  Program transaksi laundry → butuh serial number  Obyek sama-sama mesin cuci
  • 21. 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(); }
  • 22. Inheritance (Pewarisan)  Adalah konsep yang menyatakan bahwa metode atau atribut dalam kelas dapat diturunkan atau digunakan kembali oleh kelas lain.
  • 23. 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)
  • 25. Contoh Inheritance (Pewarisan) “bentuk” poligon ellips lingkaran persegi panjang segitiga bujur sangkar
  • 33. Polimorfisme banyak rupa (Polimorphism)  Arti : mempunyai banyak bentuk Merupakan suatu konsep yang menyatakan sesuatu yang sama dapat memiliki berbagai bentuk dan perilaku yang berbeda.
  • 34. 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
  • 35. Pembungkusan (encapsulation)  Adalah pembungkusan/pengemasan data dan fungsi dalam wadah bernama obyek.  atau...Menyembunyikan operasi-operasi dari dunia luar dan dari obyek-obyek lain
  • 36. Contoh Encapsulation  Televisi : - Tampak luar hanya layar dan beberapa  tombol operasi - Di dalam terkandung kompleksitas rangkaian elektronika
  • 37. Tingkat Akses Private ( Encapsulation- Private) Gambar 1 Gambar 2 NO NO NONO
  • 38. Tingkat Akses Private ( Encapsulation- Protected) OK OK OKNO
  • 40. Asosisasi (Asosiasion)  Merupakan relasi atau hubungan obyek satu dengan lainnya.  Sebuah obyek dapat berelasi dengan obyek yang lain
  • 41. Contoh Asosisasi (Asosiasion)  Contoh : Seorang pegawai bekerja pada sebuah perusahaan.  Maka “bekerja” merupakan sebuah asosiasi antara kelas pegawai dan kelas perusahaan
  • 42. 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
  • 43. Contoh Agregasi  Dalam dunia nyatanya adalah object pemain bola dan klub bola dimana pemain bola bisa tetap ada walau tidak ada klub bola
  • 44. Contoh Program Agregasi public class pemainbola { protected String nama; protected String Alamat; public pemainbola ( String nama, String alamat) { this.nama=nama; this.alamat=alamat } }
  • 45. Contoh Program Agregasi Lanjutan 1 public class klubbola { protected String nama; protected pemainbola pemainno1; public klubbola( String nama); public void setpemainsatu(pemainbola pemain) { this.pemainno1=pemain; } }
  • 46. Contoh Program Agregasi Lanjutan 2 public void main() { klubbola juventus = new klubbola(“Juventus”); pemainbola orang1 = new pemainbola(“Del Piero”,”Sukabirus”); juventus.setpemainsatu(orang1); }