You are on page 1of 4

Membedakan pemrograman OOP dengan pemrograman OOP.

Seringkali para instruktur kursus, ataupun bahkan dosen pengajar pemrograman objek merasa bahwa kalau sudah memberikan materi program dalam bahasa java, maka otomatis sudah memberikan matakuliah pemrograman berorientasi objek (OOP). Ketika materi kursus atau kuliah tersebut dicermati, ternyata banyak sekali materi yang diberikan ternyata bukan materi pemrograman berorientasi objek, namun sebenarnya hanya materi pemrograman berorientasi prosedural (Non-OOP), yang biasa digunakan dalam bahasa pemrograman terstruktur yang lama, seperti Pascal, COBOL maupun BASIC. Untuk hal tersebut, perlu dibedakan dengan jelas, mana yang dimaksud dengan pemrograman berorientasi objek yang sesuai konsepnya, maupun pemrograman dengan bahasa java, namun sebenarnya bukan pemrograman berorientasi objek. Pemrograman berorientasi prosedural dalam contoh materi ini disebut pemrograman Non-OOP. Contoh kasus dalam hal ini adalah

materi kalkulasi berantai serta materi looping ganda.

Solusi dengan NON-OOP (Prosedural)


1. Kalkulasi.java Penggunaan perhitungan dengan variabel memori
package aakuliah.dasar; class Kalkulasi { public static void main(String[] args) { int a = 12; int c = 5; int b = 23; int d = a + b - c; System.out.println("d = a + b - c = " + d); } }

2. Kalkulasi2.java Penggunaan function hitung :


package aakuliah.dasar; class Kalkulasi2 { static int hitung (int x, int y, return(x + y - z); } public static void main(String[] int a = 12; int b int c = 5; int d d = hitung(a, b, c); System.out.println("d = a } } int z) { args) { = 23; = 0; + b - c = " + d);

Program OOP vs NON OOP bab 10.sxw, 2008, witarto, hal 1

3. Kalkulasi3.java dan drvKalkulasi3.kava Solusi dengan objek namun tanpa Enkapsulasi Atribut Atribut objek dari kelas Kalkulasi3 diakses langsung secara publik dari modul lain (drvKalkulasi).
package aakuliah.dasar; class Kalkulasi3 { int a = 12; int b = 23; int c = 5; public Kalkulasi3() { } } class drvKalkulasi3 { public static void main(String[] args) { Kalkulasi3 ob01 = new Kalkulasi3(); int d = ob01.a + ob01.b - ob01.c ; System.out.print("d = a + b - c = "); System.out.println(d); } }

4. drvBintang.java Contoh kasus program dengan double loop


package aakuliah.dasar; class drvBintang { public static void main(String[] args) { System.out.println("Iterasisederhana- non OOP---"); System.out.println("----------------------------"); for (int z=1;z<5;z++ ) { System.out.print(z); for (int x=0;x<(5-z);x++ ) { System.out.print("*"); } System.out.println(); } System.out.println("----------------------------"); } }

Program OOP vs NON OOP bab 10.sxw, 2008, witarto, hal 2

Solusi Dengan oop


1. drvBintang.java Pencetakan simbol * diinisialisasi ketika membentuk objek.
package aakuliah.dasar; class simbol { private String gbr; public simbol() { gbr = "*"; } public void setGbr(String x) { gbr = x; } public String getRangkaian(int ww) { String rangk = ""; for (int x=0;x<(5-ww);x++ ) { rangk = rangk + gbr; } return rangk; } } class drvBintang01 { public static void main(String[] args) { simbol obj01 = new simbol(); System.out.println("Iterasisederhana- dgn OOP---"); System.out.println("----------------------------"); for (int z=1;z<5;z++ ) { System.out.print(z); System.out.println(obj01.getRangkaian(z)); } System.out.println("----------------------------"); } }

2. drvKalkulasi4.java
package aakuliah.dasar; class Kalkulasi4 { private int a; private int b; private int c; public Kalkulasi4() { } public Kalkulasi4(int x, int y, int z) { a = x; b = y; c = z; } public int getJumlah() { return (a + b - c); } }

Program OOP vs NON OOP bab 10.sxw, 2008, witarto, hal 3

class drvKalkulasi4 { public static void main(String[] args) { Kalkulasi4 ob05 = new Kalkulasi4(12, 23, 5); int d = ob05.getJumlah() ; System.out.print("d = a + b - c = "); System.out.println(d); } }

3. Solusi dengan java swing

Operasi Klik 1, 2 Klik + Klik 2, 3 Klik - Klik 5 sourcecode : calc04.java

Program OOP vs NON OOP bab 10.sxw, 2008, witarto, hal 4

You might also like