PBO
Pemrograman berorientasi objek (Inggris: object-oriented programming disingkat OOP) merupakan paradigma pemrograman yang berorientasikan kepada objek. Semua data dan fungsi di dalam paradigma ini dibungkus dalam kelas-kelas atau objek-objek. Bandingkan dengan logika pemrograman terstruktur. Setiap objek dapat menerima pesan, memproses data, dan mengirim pesan ke objek lainnya.
Pemrograman
Terstruktur
Pemrograman Terstruktur adalah suatu
proses untuk mengimplementasikan urutan langkah untuk menyelesaikan suatu
masalah dalam bentuk program. Selain pengertian diatas Pemrograman Terstruktur
adalah suatu aktifitas pemrograman dengan memperhatikan urutan langkah-langkah
perintah secara sistematis, logis , dan tersusun berdasarkan algoritma yang
sederhana dan mudah dipahami. Prinsip dari pemrograman terstruktur adalah Jika
suatu proses telah sampai pada suatu titik / langkah tertentu , maka proses
selanjutnya tidak boleh mengeksekusi langkah sebelumnya / kembali lagi ke baris
sebelumnya, kecuali pada langkah – langkah untuk proses berulang (Loop).
Pemrograman
Terstruktur
|
Pemrograman Berbasis
Objek
|
Memecah program
dalam fungsi dan data
|
Menggabungkan fungsi
dan data dalam kelas – kelas atau objek – objek
|
Memiliki ciri
Sequence (berurutan), Selection (pemilihan) dan Repetition
(perulangan)
|
Memiliki ciri
Encapsulation (pengemasan), Inheritance (penurunan sifat) dan Polymorphism
(perbedaan bentuk dan perilaku)
|
Struktur program
rumit karena berupa urutan proses dan fungsi-fungsi
|
Struktur program
ringkas, cukup dengan membuat Objek dan class lalu bekerja berdasarkan object
dan class tersebut.
|
Re-use kode program
kurang
|
Kode program sangat
re-usable. object dan class dapat digunakan berkali-kali, sehingga dapat
menghemat space memori.
|
Efektif digunakan
untuk menyelesaikan masalah kecil dan tidak cocok untuk menyelesaikkan
masalah yang rumit, karena nantinya akan kesulitan menemukan solusi
permasalahan ketika terjadi error
|
Efektif digunakan
untuk menyelesaikan masalah besar, karena OOP terdiri dari class-class yang
memisahkan setiap kode program menjadi kelompok – kelompok kecil, sesuai
dengan fungsinya
|
Mudah di awal, namun
kompleks diproses selanjutnya
|
Sulit di awal
(karena harus membuat class) namun selanjutnya akan terasa mudah dan cepat
|
Eksekusi lebih
lambat karena setiap perintah dikerjakan berurutan
|
Eksekusi lebih cepat
karena dieksekusi bersamaan, program hanya mengatur Objek, properties dan
method-nya saja
|
Perbedaan
PBO dan PS
Pada pemrograman terstruktur, program yang dibuat
biasanya berbentuk fungsi fungsi yang bekerja secara berurutan dan berulang
untuk menyelesaikan masalah, bedanya dengan PBO, PBO dibuat dengan membuat
class yang diisi dengan objek objek di dalamnya, dan objek yang di dalam class
ini yang akan mainkan dalam berjalannya program.
Berikut contoh dari program PBO, dengan class Player dan class Game
Player.java
package dasar;
public class Player {
// definisi atribut
String name;
int speed;
int healthPoin;
// definisi method run
void run(){
System.out.println(name +" is
running...");
System.out.println("Speed: "+ speed);
}
// definisi method isDead untuk mengecek nilai kesehatan (healthPoin)
boolean isDead(){
if(healthPoin <= 0) return true;
return false;
}
}
Game.java
package dasar;
public class Game {
public static void main(String[] args){
// membuat objek player
Player petani = new Player();
// mengisi atribut player
petani.name = "Petani Kode";
petani.speed = 78;
petani.healthPoin = 100;
// menjalankan method
petani.run();
if(petani.isDead()){
System.out.println("Game
Over!");
}
}
}
Coba eksekusi
Game.java
dengan
klik kanan pada Game.java
lalu pilih Run File. Maka hasilnya:
Coba ganti nilai
healthPoin
menjadi 0
.petani
.healthPoin
=0;
Setelah itu, coba eksekusi lagi:
Bisa dilihat bahwa yang di dalam PBO yang di ubah dan di input dalam program adalah objek dari dalam class, seperti "petani.healthPoin" yang di input 100 lalu diganti menjadi 0 agar program selesai.
No comments:
Post a Comment