Apa itu Object Orientation?

+-----------------------------------------------------------------+
| Catatan Online ghaNOZ2480 --> http://ghanoz2480.wordpress.com   |
| Kategori: Software Engineering                                  |
+-----------------------------------------------------------------+
| APA ITU OBJECT-ORIENTATION                                      |
| By: ghaNOZ2480 a.k.a M. Ghazali (TheONEmAn2480)                 |
| Friday, August 01, 2008  2:41 AM                                |
|                                                                 |
| Sumber:                                                         |
| Chapter 2 Review of Object Orientation                          |
|   (Timothy C. Lethbridge and Robert Laganiere, "Object-Oriented |
| Software Engineering:Practical                                  |
|    software development using UML and Java", McGraw Hill, 2002, |
| ISBN 0-07-709761-0.)                                            |
+-----------------------------------------------------------------+

APA ITU OBJECT ORIENTATION?

Sistem object-oriented menggunakan abstraksi untuk membantu pembuatan software menjadi tidak terlalu kompleks. Abstraksi adalah sesuatu yang membebastugaskan Anda untuk berurusan dengan detail. Sistem object-oriented menggabungkan abstraksi prodedural dengan abstraksi data.

Abstraksi Prosedural dan Paradigma Prosedural

Sejak hari awal pemrograman, software sudah diatur dengan gagasan prosedur-prosedur (juga disebut fungsi atau rutin). Ini merupakan abstraksi prosedur. Ketika menggunakan beberapa prosedur, programmer tidak perlu mengkhawatirkan mengenai semua detail bagaimana prosedur tersebut mengerjakan sesuatu, yang hanya perlu kita ketahui adalah bagaimana cara memanggilnya dan apa yang dilakukannya. Pandangan programmer terhadap sistem tersebut yang membuatnya menjadi lebih sederhana.

Pada paradigma prosedural, seluruh sistem diatur ke dalam suatu susunan prosedur. Satu prosedur main (prosedur utama yang menjalankan program) memanggil beberapa prosedur lainnya, dimana yang selanjutnya memanggil prosedur yang lainnya lagi.

Paradigma prosedural berjalan dengan baik ketika program yang dibuat hanya digunakan untuk melakukan kalkulasi dengan data yang relatif sederhana. Sistem yang dibuat menggunakan paradigma prosedural menjadi kompleks jika banyak prosedur berbeda yang berurusan dengan setiap data, atau jika setiap prosedur berurusan dengan banyak tipe data.

Abstraksi Data

Abstraksi data dapat membantu mengurangi beberapa kerumitan dari sistem. Records dan struktur merupakan abstraksi data yang pertama diperkenalkan. Gagasannya adalah mengelompokkan bagian-bagian data yang menjelaskan suatu entitas, jadi programmer dapat memanipulasi data tersebut sebagai unit.

Dalam penggunaan abstraksi data, programmer tetap harus menulis kode yang kompleks dalam bagian yang berbeda.

Paradigma Object-oriented: mengatur abstraksi prosedural dalam konteks abstraksi data

Pada tahun 1990-an paradigma object oriented diterima sebagai cara yang terbaik untuk mengatur sebagian besar sistem.

Definisi paradigma object-oriented

Definisi dari paradigma object-oriented adalah pendekatan untuk pemecahan masalah dimana semua perhitungan dilakukan dalam konteks objek. Objek adalah contoh konsepsi pemrograman, biasanya disebut kelas, yang merupakan abstraksi data dan berisi abstraksi prosedural yang dijalankan pada objek.

Pada paradigma object-oriented, program yang berjalan dapat dilihat sebagai kumpulan objek yang bekerjasama untuk menjalankan tugas yang diberikan.

Dibawah ini menunjukkan paradigma prosedural. Kode diatur ke dalam prosedur yang memanipulasi setiap tipe data yang berbeda.

               /~~~~~~\
               | main |
               \------/
                   |
                   |
       /~~~~~~~~~~~~~~~~~~~~~\
       |Menjalankan transaksi|
       \---------------------/
                   ".
                ." " ".
              ."  "    ".
            ."   "       ".
          ."    "          ".
        ."     "             ".
  /~~~~~~\  /~~~~~~\  /~~~~~~~~~~~~~~~~~\
  |Kredit|  |Credit|  |Menghitung bunga |
  \------/  \------/  |                 |
                      |  if checking    |
                      |    then xxx     |
                      |  if savings     |
                      |    then xxx     |
                      |  else           |
                      |    dan lain-lain|
                      \-----------------/

Di bawah ini merupakan paradigma object-oriented. Kode diatur ke dalam kelas yang berisi prosedur untuk memanipulasi instance dari kelas itu sendiri. (Gambar dibawah ini menggunakan notasi UML).

                  -----------
                  | Account |
                  ===========
                  | Kredit  |
                  | Credit  |
                  -----------
                      /'\
                     /___\
                       |
          _____________|_____________
          |                         |
---------------------     ---------------------
| Memeriksa Account |     | Menyimpan Account |
=====================     =====================
| Menghitung Bunga  |     | Menghitung Bunga  |
| Menghitung Biaya  |     | Menghitung Biaya  |
---------------------     ---------------------

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s