Pemorograman Berbasis Objek

Anggraeni
1 view / 1558 show
3 years ago
General

Pemrograman berorientasi objek

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,

Model data berorientasi objek dikatakan dapat memberi fleksibilitas yang lebih, kemudahan mengubah program, dan digunakan luas dalam teknik piranti lunak skala besar. Lebih jauh lagi, pendukung OOP mengklaim bahwa OOP lebih mudah dipelajari bagi pemula dibanding dengan pendekatan sebelumnya, dan pendekatan OOP lebih mudah dikembangkan dan dirawat.

Konsep dasar

  • Kelas
  • Object
  • Abstraksi
  • Enkapsulasi
  • Polimorfisme

Dengan menggunakan OOP maka dalam melakukan pemecahan suatu masalah kita tidak melihat bagaimana cara menyelesaikan suatu masalah tersebut (terstruktur) tetapi objek-objek apa yang dapat melakukan pemecahan masalah tersebut.

 manfaat dari penggunaan OOP

1.Hemat dalam penulisan.  Dalam pemrograman prosedural, penggunaan kode2 untuk operasi yang sama bisa sangat melelahkan (bikin tangan capek euy :) ), tetapi jika dengan oop, operasi-operasi yang sama tersebut bisa dikurangi dengan menggunakan fungsi-fungsi. Jadi, dengan membuat satu fungsi, kita kemudian bisa menggunakannya berkali-kali. Jauh lebih nyaman kan?
2. Deteksi Error.  Tidak ada yang sempurna di dunia ini, apalagi itu program buatan manusia.  Pasti ada errornya.  Kalau di prosedural, kita harus mendeteksi error ini berdasarkan error line tetapi yang menjadi adalah error terjadi mungkin bisa karena konflik antar operasi, alur yang salah, dll..Nah di prosedural, hal ini berarti kita harus menceknya satu persatu. Jika line errornya di line 40 bisa saja kita harus mencek line 30-39 atau mungkin lebih.  Dengan oop, dimana operasi-operasi dibedakan berdasarkan class dan fungsi, kita hanya mencari fungsi-fungsi yang saling berkaitan, dan tentunya hal ini akan jauh lebih menghemat waktu.
3. Update.  Mungkin suatu saat kita ingin mengupdate aplikasi kita, dengan prosedural caranya gmn? Yah ganti aja semua kode selesai masalah :) . Dengan oop, kita bisa melakukannya dengan mengganti beberapa class atau mungkin bisa hanya dengan mengganti satu class. Bagaimana bisa? Jika kita menggunakan sistem pemrograman dengan menggunakan inheritance (pewarisan), kita hanya perlu mengganti class induk, contoh: class b,c,d semuanya merupakan turunan dari class a, jadi jika kita ingin mengupdate program kita, kita hanya perlu merubah class a ini, sedangkan class b,c,d pasti akan langsung mengikuti perubahan tersebut.
4. Loading. Kalau masalah ini juga pernah di bahas di tulisanku yang lainnya. Ide ini aku dapet waktu baca bukunya google, yaitu google hebat dalam programnya karena google mampu memotong-motong bagian program menjadi kecil-kecilsehingga dapat memangkas waktu loading menjadi lebih cepat. Dengan adanya konsep oop ini, tentunya hal ini tidak mustahil dilakukan, yaitu dengan cara membagi2nya berdasarkan class dan fungsi.

Class

Kelas pada JAVA didefinisikan dengan menggunakan kata kunci class. Bentuk umum dari deklarasi kelas pada JAVA adalah :

1
2
3
4
5
[modifier1]class NamaKelas [modifier2]{
 
Class body;
 
}
 

Class adalah kumpulan atas definisi data dan fungsi-fungsi dalam suatu unit untuk suatu tujuan tertentu. Sebuah class adalah dasar dari modularitas dan struktur dalam pemrograman berorientasi object. Dengan modularitas, struktur dari sebuah program akan terkait dengan aspek-aspek dalam masalah yang akan diselesaikan melalui program tersebut. Cara seperti ini akan menyederhanakan pemetaan dari masalah ke sebuah program ataupun sebaliknya.

ini Contoh dalam Bentuk “cSharp (C#)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
using System;
 using System.Collections.Generic;
 using System.Linq;
 using System.Text;
 
 namespace OOP2_Widy_Classmethodidentifier
 {
 class menghitung {
 public byte kali(byte a, byte b) {
 byte c = (byte)(a * b);
 return c;
 }
 public void hasil(string comment, byte e) {
 Console.WriteLine();
 Console.WriteLine("{0} {1}", comment, e);
 }
 }
 class Program {
 public static byte nilai(string yes) {
 byte i = 0;
 Console.Write(yes);
 i = Convert.ToByte(Console.ReadLine());
 return i;
 }
 static void Main(string[] args) {
 menghitung proses = new menghitung();
 byte a, b, c;
 a = nilai("masukkan nilai 1 : ");
 b = nilai("masukkan nilai 2 : ");
 c = proses.kali(a, b);
 proses.hasil("Hasil Perkalian : ", c);
 Console.ReadKey(true);
 }
 }
 
 }

Nah, maka hasilnya akan seperti ini :

Capture1.1

Method

Method adalah sarana bagi programmer untuk memodularisasi,
artinya membreak atau memecah program kompleks menjadi bagian yang kecil-kecil
sehingga nantinya dapat digunakan berulang-ulang,
daripada menulis beberapa baris kode yang sama.
Method dalam Java mirip dengan fungsi atau procedure dalam bahasa pemrograman yang lain.

public void HitungLuasPersegiPanjang(int p, int l)
 {
 int luasPersegiPanjang;
 
luasPersegiPanjang = p * l;
 
System.out.println(“Luas persegi panjang = ” + ” ” + luasPersegiPanjang);
 }
 
Berikut ini merupakan source code function untuk menghitung luas persegi panjang
 
public int HitungLuasPersegiPanjang(int p, int l)
 {
 int luasPersegiPanjang;
 
luasPersegiPanjang = p * l;
 return luasPersegiPanjang;
   
Share On :