Modul 2a PBO I-Konsep OO
Modul 2a PBO I-Konsep OO
08/02/23 TIUSD 1
Tujuan
Apa itu Berorientasi Obyek (Object Oriented)?
Mengapa OO ?
Kapan & di mana kita memakai OO?
Obyek (object) dan kelas (kelas)
08/02/23 TIUSD 2
Apa itu OO
Pemrograman terstruktur:
Cara programmer memandang dan
mengemulasikan dunia sebagai
proses/prosedur/function
Sistem perangkat lunak berorientasi
obyek:
Perangkat lunak (program) yang dibuat
dengan cara pandang pemrograman
berorientasi obyek
08/02/23 TIUSD 3
Komponen Sistem OO
Konsep dasar: abstraksi, obyek dan kelas,
enkapsulasi, pesan, pewarisan, polimorfisme
Pemrograman Berorientasi Obyek (OOP)
Bahasa Pemrograman
Analisis dan Desain Berorientasi Obyek (OOAD)
Bahasa pemodelan misal Unified Modelling
Language (UML)
Proses misal Unified Process
Alat bantu (tools) misal Rational Rose
08/02/23 TIUSD 4
Mengapa OO
BEBERAPA ALASAN:
Pengembangan perangkat lunak itu sulit karena
“perangkat lunak mudah diimpikan”
Kompleksitas pengembangan perangkat lunak yang
terus bertumbuh
membutuhkan dukungan konsep yang lebih handal, guna
ulang (reusable) dan natural
OO menawarkan tipe data abstrak, modularitas,
pemodelan informasi, proses software untuk
mengatasinya
Walaupun demikian, OO bukan jaminan sukses
pengembangan perangkat lunak
08/02/23 TIUSD 5
Kapan dan dimana OO
BEBERAPA SITUASI UMUM:
Jika perangkat lunak (PL) yang dibangun cukup
kompleks
Jika PL yang dibangun diperkirakan akan tumbuh
makin kompleks di masa mendatang
Jika kita ingin membangun PL yang:
Berdasar pada komponen yang telah pernah ada sebelumnya
(daur ulang) -> untuk itu perlu mengetahui komponen yang
sudah ada
Dapat dipergunakan kembali di masa mendatang (reusable)
Dan mungkin, kapanpun dan di manapun
08/02/23 TIUSD 6
Abstraksi
Jika menulis dalam sebuah program
komputer, maka dalam komputer dibuat
suatu model dari beberapa bagian dari
dunia nyata -> abstraksi.
Bagian yang dibuat model ini dibangun
dari obyek yang ada di domain
permasalahan
08/02/23 TIUSD 7
Obyek dan Kelas
Obyek-obyek dapat dikategorikan dan kelas
mendeskripsikan dalam cara yang abstrak
semua obyek dari suatu macam (kind) yang
khusus
Misalkan dalam model simulasi lalulintas,
salah satu entitasnya adalah mobil (car).
Mobil (car)
Apakah Obyek atau Kelas ?
08/02/23 TIUSD 8
Obyek dan Kelas
Obyek
Merepresentasikan “benda” dari dunia nyata
atau dari suatu domain permasalahan
(contoh: mobil merah itu yang ada di garasi)
Kelas
Merepresentasikan semua obyek dari suatu
macam (kind) (contoh “mobil” / “car”)
08/02/23 TIUSD 9
DEMO
08/02/23 TIUSD 10
Methods dan parameter
Obyek mempunyai operasi yang dapat
dipanggil (di-invoked). Java menyebutnya
method.
Method mungkin mempunyai parameter
(bisa data primitive maupun obyek) untuk
melewatkan informasi tambahan yang
diperlukan untuk dieksekusi.
08/02/23 TIUSD 11
DEMO
08/02/23 TIUSD 12
Konsep penting lainnya
Banyak instance dapat dibuat dari suatu
kelas
Suatu obyek mempunyai atribut: nilai
yang disimpan dalam field.
Kelas mendefinisikan field apa saja yang
dipunyai, tetapi tiap obyek menyimpan
sekumpulan nilai miliknya masing-masing
08/02/23 TIUSD 13
State
08/02/23 TIUSD 14
Obyek dua Circle
08/02/23 TIUSD 15
Source code
Tiap kelas mempunyai source code (kode
Java) yang berhubungan dengannya
untuk mendefinisikan rincian (filed dan
method)
08/02/23 TIUSD 16
Nilai Balik (return value)
Method mungkin mengembalikan suatu
hasil lewat sebuah nilai balik
08/02/23 TIUSD 17
Interaksi Obyek
(Object Interaction)
Suatu obyek dapat membuat obyek yang lain
Antar obyek dapat memanggil method milik obyek
yang lain
Misal: suatu program dimulai dengan membuat
suatu obyek pertama dari kelas picture kemudian
obyek-obyek yang lain (dari kelas circle, square dan
triangle) dibuat dari obyek pertama tersebut. Lihat
demo ...
08/02/23 TIUSD 18
Interaksi antar obyek
08/02/23 TIUSD 19