Dalam memprogram sebuah aplikasi kita dapat menggunakan pemrograman dengan cara OOP atau Terstruktur, keduanya memiliki kelebihan dan kekurangannya masing-masing. Berikut adalah perbedaan OOP dan Terstruktur.Â
Â
Pengertian
Object Oriented Programming (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 merupakan suatu proses untuk mengimplementasikan urutan langkah penyelesaian suatu masalah dalam bentuk program dan merupakan suatu aktifitas pemrograman yang dilakukan dengan memperhatikan setiap urutan dari setiap langkah perintah yang dikerjakan secara sistematis, logis, dan tersusun berdasarkan algoritma yang sederhana dan dapat dengan mudah dipahami. Prinsip dari pemrograman terstruktur adalah Jika suatu proses telah sampai pada suatu titik ataupun langkah tertentu, maka proses selanjutnya tidak boleh mengeksekusi langkah sebelumnya ataupun kembali ke baris sebelumnya, kecuali pada langkah - langkah untuk proses pengulangan atau berulang (Loop).
Â
Perbedaan
(-) Pemograman Terstruktur : Memecah program dalam fungsi dan data
Pemograman Berorientasi Object : Menggabungkan fungsi dan data dalam kelas – kelas atau objek – objek
(-) Pemograman Terstruktur : Memiliki ciri Sequence (berurutan), Selection (pemilihan) dan Repetition (perulangan) Â
Pemograman Berorientasi Object : Memiliki ciri Encapsulation (pengemasan), Inheritance (penurunan sifat) dan Polymorphism (perbedaan bentuk dan perilaku)
(-) Pemograman Terstruktur : Struktur program rumit karena berupa urutan proses dan fungsi-fungsiÂ
Pemograman Berorientasi Object : Struktur program ringkas, cukup dengan membuat Objek dan class lalu bekerja berdasarkan object dan class tersebut.
(-) Pemograman Terstruktur : Re-use kode program kurang
Pemograman Berorientasi Object : Kode program sangat re-usable. object dan class dapat digunakan   berkali-kali, sehingga dapat menghemat space memori.
(-) Pemograman Terstruktur : Efektif digunakan untuk menyelesaikan masalah kecil dan tidak cocok untuk menyelesaikkan masalah yang rumit, karena nantinya akan kesulitan menemukan solusi permasalahan ketika terjadi error
Pemograman Berorientasi Object : Efektif digunakan untuk menyelesaikan masalah besar, karena OOP terdiri dari class-class yang memisahkan setiap kode program menjadi kelompok - kelompok kecil, sesuai dengan fungsinya.
(-) Pemograman Terstruktur : Mudah diawal, namun kompleks diproses selanjutnya
Pemograman Berorientasi Object : Sulit diawal (karena harus membuat class) namun selanjutnya akan terasa mudah dan cepat.
(-) Pemograman Terstruktur : Mudah diawal, namun kompleks diproses selanjutnya
Pemograman Berorientasi Object : Sulit diawal (karena harus membuat class) namun selanjutnya akan terasa mudah dan cepat.
(-) Pemograman Terstruktur : Eksekusi lebih lambat karena setiap perintah dikerjakan berurutan
Pemograman Berorientasi Object : Eksekusi lebih cepat karena dieksekusi bersamaan, program hanya mengatur Objek, properties dan method-nya saja
Â
Kesimpulan
Dari pengertian pemrograman terstruktur dan pemrograman berorientasi objek itu sendiri kita dapat menyimpulkan, apa perbedaan dari pemrograman terstruktur dan pemrograman berorientasi objek itu. Pemrograman berorientasi objek (Object-Oriented Programming atau 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, Sedangkan untuk pemrograman terstruktur adalah kebalikan dari pemrograman berorientasi objek yaitu sebuah cara pemrosesan data yang terstruktur dalam analisa, cara dan penulisan pemrograman. Dikarenakan harus terstruktur sehingga dalam pembuatannya antara satu line pemrograman dengan yang lainnya berhubungan.
Â