Pemrograman Berorientasi Objek (Object Oriented Programming) Imam Fahrur Rozi
ALPRO PBO
• Mempelajari cara membuat rangkaian logika untuk menyelesaikan masalah (Algoritma)
• Memodelkan Algoritma dalam bentuk Flowchart
• Mempelajari elemen dasar pemrograman komputer (variabel, tipe data, operator, seleksi kondisi : if, if-‐else, switch-‐case, perulangan : for, while, do-‐while, array, fungsi)
• Mempelejari tentang paradigma membuat program berorientasi objek
Intro
* OOP : Paradigma pemrograman yang memandang suatu program sebagai kumpulan OBJEK-‐OBJEK yang saling berinteraksi * Ketika merancang program dengan menggunakan paradigma OOP, berarti yang paling mendasar harus dilakukan adalah identifikasi OBJEK-‐OBJEK yang ada dan saling berinteraksi dalam sistem
Pengertian OOP (1)
* Perbandingan OOP dengan Structural Programming * OOP : * Program dipandang sebagai kumpulan OBJEK
* Structural Programming : * Program dipandang sebagai kumpulan FUNGSI atau PROSES
atau PROSEDUR
Pengertian OOP (2)
* Contoh OOP vs Structural Programming
Pengertian OOP (3)
SISTEM INFORMASI AKADEMIK
OOP Structural Programming
Kumpulan Objek seperti : Kumpulan Fungsi seperti :
* Mahasiswa * melihatKHS()
* Dosen * mengubahDataMhs()
* Matakuliah * memasukkanDataAbsensi()
* Staf Administrasi * memasukkanMataKuliah()
* Absensi, dsb * MencetakKHS(), dsb
* Sesuatu yang NYATA dan bukan sekedar rancangan * Bersifat khusus * Contoh OBJEK: * Matakuliah OOP, Matakuliah Alpro, Matakuliah Basis
Data, dsb * Kucing, Kambing, Sapi, Harimau dsb * Mobil Kijang, Mobil Panther, Mobil Honda Jazz dsb
OBJEK
* RANCANGAN atau TEMPLATE atau BLUE PRINT yang digunakan untuk menggambarkan atau membuat objek * Bersifat umum
CLASS
CLASS OBJEK
Masih berupa Rancangan/ template/blue print
Sudah nyata (bukan sekedar rancangan lagi)
Template untuk membuat objek Hasil realisasi dari class, atau sesuatu bentuk nyata yang dibuat dari class
Contoh: Contoh:
* Mobil * Mobil Kijang, Mobil Panther, Honda Jazz, dsb
* Matakuliah * Matakuliah OOP, Alpro, Basisdata dsb
* Hewan * Sapi, Kucing, Kambing, dsb
* dsb *dsb
CLASS vs OBJEK
* Memiliki : * Atribut/Data/Properti/State/Karakter : Data atau properti yang
dimiliki oleh class/objek * Method/Fungsi/Prosedur/Behaviour : Perilaku atau sesuatu
yang bisa dilakukan oleh suatu class/objek
* Contoh: * Class: Mahasiswa * Atribut: nim, nama, ipk, alamat * Method: melihatIpk(), mengubahBiodata(), melihatKHS() dsb
Karakteristik Class & Objek
CLASS ATRIBUT METHOD
Komputer *Monitor *RAM *Hard Disk *PowerSupply *Processor
*menyimpanData() *menampilkanData() *reboot() *shutDown() *start()
Mobil *Velg *Warna *Produsen *Transmisi
*tambahKecepatan() *mengerem() *berhenti() *berjalan *berbelok()
Contoh Class
CLASS MOBIL OBJEK MOBIL KIJANG OBJEK MOBIL HONDA JAZZ
Atribut Velg Racing Racing
Warna Abu-‐Abu Silver
Produsen Toyota Honda
Transmisi Manual Otomatis
Method tambahKecepatan()
mengerem()
berhenti()
Contoh Class dan Objek
* Diagram untuk menggambarkan desain Class
Diagram Class
Mobil
velg warna produsen transmisi
tambahKecepatan() mengerem() berhenti()
Nama Class
Daftar Atribut
Daftar Method
* Dengan menggunakan kata kunci class * Diikuti dengan nama class * Format: class NamaClass{….} * Nama klas diawalai dengan huruf besar. Jika terdiri dari lebih dari 1 kata, maka antar kata satu dengan kata yang lain digandeng, dan tiap huruf awal dari tiap kata menggunakan huruf besar * Biasanya berupa KATA BENDA
Cara Membuat Class
class Mahasiswa { //atribut dan method
} class MahasiswaReguler{
//atribut dan method }
Contoh Coding Class
* Cara memuat atribut sama dengan membuat variabel * Format: tipedata namaVariabel; * Nama variabel diawali dengan huruf kecil. Jika terdiri dari lebih dari 1 kata, maka antar kata satu dengan yang lain digandeng. Kata pertama diawali huruf kecil, dan kata selanjutnya diawali dengan huruf besar.
Cara Membuat Atribut
* Sama dengan membuat fungsi * Format: tipedata namaMethod(daftar_parameter){…} * Aturan penamaan method=aturan penamaan atribut
Cara Membuat Method
void tambahKecepatan(){ //isi method
} void inputAbsen(char absen, int jumlah){
//isi method }
Contoh Method
* Objek dibuat dari Class * Sebelum membuat objek, harus dibuat class lebih dulu, yang mana dari class tsb nantinya objek akan dibuat * Proses membuat objek dari suatu class à INSTANSIASI * Ditandai kata kunci new * Aturan penamaan objek=penamaan atribut * Format:
NamaClass namaObjek = new NamaClass();
Pembuatan Objek
* Membuat objek dari klas Mahasiswa Mahasiswa m = new Mahasiswa(); * Membuat objek dari klas Sepeda Sepeda sp1 = new Sepeda();
Contoh Instansiasi
Contoh: Diagram Class à Class (1)
Mahasiswa
nim: String nama: String ipk: float umur: int
tampilBiodataMhs(): void tampilIpk(): void
* Kode program class Mahasiswa di atas masih berupa rancangan. Agar bisa digunakan, maka harus dibuat objek.
Contoh: Diagram Class à Class (2)
Contoh (2)
Sepeda
kecepatan: float gigi: int
start(): void kurangiKecepatan(float v): void tambahKecepatan(float v): void stop(): void
Latihan
Kalkulator
operan1: int operan2: int hasil: float
tambah(): void kurang(): void kali(): void bagi(): void