Showing posts with label OOP. Show all posts
Showing posts with label OOP. Show all posts

September 14, 2009

Perbedaan OOP dengan Procedural programming

Menurut Bjarne Strousrup dalam sebuah papernya yang berjudul What "is Object oriented programming?" pradigma dalam OOP adalah "Tentukan kelas yang kita inginkan, lengkapi sederetan operasi unutk setiap kelas, tentuka struktur secara eksplisit dengan pewarisan".

Procedural language Programming berorientasi pada aksi, sedangkan object oriented programming berorientasi pada objek.

Pemrograman terstrukutr tradisional terdiri atas perancangan struktur data dan memanipulasinya dengan fungsi-fungsi dengan suatu cara tertentu yang secara teori bisa berhenti. Fungsi-fungsi ini yang biasa kita kenal dengan algoritma. Nicklaus wirth, memberikan judul bukunya Algorithms + Data Structures = Programs. Dari judulnya, secara tidak langsung beliau mengatakan bahwa algoritma dahulu, struktur data kemudian. pada awalnya, pikirkan dahulu bagaimana memanipulasi data, baru kemudian menentukan struktur data apa yang tepat digunakan agar manipulasinya menjadi mudah. OOP membalik urutan tersebut dengan merancang struktur data diawal, baru kemudian mencari algoritma terbaik untuk memanipulasi data.Kata kunci Procedural Programming adalah dekomposisi masalah menjadi banyak fungsi. Cara ini cukup efektif untuk masalah kecil dan sederhana, namun untuk masalah yang jauh lebih besar, pendekatan dengan kelas/objek memberikan manfaat lebih. pertama, kelas menyediakan mekanisme pengelompokkan yang memudahkan bagikita. Sebuah program yang membutuhkan 2000 fungsi mungkin hanya membutuhkan 100 kelas dengan masing2 kelasmemiliki rata-rata 20 operasi. kelas menyembunyikan (mengenkapsulasi) representasi data dari semua kode program kecuali operasinya saja. Jika sebuah bug program mengacaukan sebuah item data, lebih mudah mencari penyebabnya diantara 20 operasi daripada 2000 fungsi.

Sumber : buku dari pascal ke java.

Apa itu OOP

OOP apaan tuh ? bagi kebanyakan orang, udah pada tau dan mengerti apa itu OOP, tapi ada juga yang belum tau, seperti saya ini,, oleh karena itu saya akan mencoba membahas sedikit tentang OOP, karena saya juga gak begitu paham betul apa itu OOP. mari kita bahas bersama apa itu OOP.

OOP adalah kepanjangan dari Objek Oriented Programming, atau lebih dikenal sebagai Pemrograman berorientasi objek, Di Universitas Gunadarma saya mendapatkan mata kuliah OOP dengan menggunakan bahasa pemrograman C dan C++, dan sekarang sedang menggunakan Bahasa pemrograman JAVA.

OK, balik lagi ke OOP, OOP merupakan suatu bentuk pemrograman yg memodelkan masalah dengan pendekatan objek, jadi OOP berbeda dengan Procedural language. Kalau dalam buku An Introduction to Object Oriented Programming, Timothy Budd mengutip karakteristik fundamental OOP dari Alan Kay (bapak OOP), sebagai berikut :

1. semua adalah objek
2. Komputasi dilakukan dengan komunikasi antarobjek.
3. Setiap objek memilii memori sendiri, yang dapat terdiri dari onjek-objek lainnya.
4. suatu objek adalah wakil dari representasi dari suatu kelas.
5. kelas merupakan kumpulan tingkah laky yang berkaitan dengan suatu objek.
6. kelas-kelas diorganisasikan kedalam sturktur pohon yang berakar tunggal, dinamakan jenjang pewarisan (inheritance hierarchy)

Sifat kelas pada tinggat tertinggi terbawa hingga kekkelas pada tingkatan yang paling rendah, yang menunjukkan konsep pewarisan atau inheritance. dengan mengistruksikan tugas khusus dan terbatas pada setiap objek, programmer dapat memecah masalah pemrograman menjadi bagian-bagian kecil sehingga dapat mengatasi masalah kompleksitas permasalahan dengan lebih mudah. Setiap objek pada umumnya memiliki tiga sifat, yaitu :

keadaan, operasi, dan identitas objek. sebuah objek dapat menyimpan informasi sebagai hasil operasi sebelumnya, informasi tersebut menentukan bagaimana objek melakukan operasi selanjutnya,. Koleksi dari seluruh informasi yang dimiliki objek pada suatu saat merupakan keadaaan objek pada saat itu. Informasi tersebut pada akhirnya memberikan identitas khusus yang membedakan suatu objek dengan objek lainnya.

sumber : buku Dari pascal ke Java

 

Copyright @ 2013 Gembel-IT.

Designed by Templateiy & CollegeTalks