• Wednesday, April 6, 2016

    Perbedaan Pemrograman Terstruktur Dan Pemrograman Berorientasi Objek


    Pernah mendengar istilah Pemrograman Terstruktur atau Pemrograman Berorientasi Objek? Pasti sudah tidak asing lagi bagi kita semua istilah Pemrograman Terstruktur atau Pemrograman Berorientasi Objek. Pemrograman Terstruktur atau Pemrograman Berorientasi Objek merupakan bentuk struktur data dari algoritma pemrograman.

    Pemrograman Terstruktur    
    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).

    Pemrograman Berorientasi Objek
    Pemrograman Berorientasi Objek (PBO) atau dalam bahasa inggris disebut Object Oriented Programming (OOP) merupakan sebuah paradigma pemrograman yang berorientasikan kepada objek. Semua data dan fungsi di dalamnya dibungkus dalam suatu kelas-kelas atau objek-objek. Setiap objek dapat menerima pesan, memproses data, dan mengirim pesan ke objek lainnya.

    Perbedaan Pemrograman Terstruktur dan Pemrograman Berorientasi Objek
    Perbedaan mendasar antara Pemrograman Berorientasi Objek dan Pemrograman Terstruktur adalah dengan menggunakan Pemrograman Berorientasi Objek 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. Sedangkan untuk Pemrograman Terstruktur,  menggunakan prosedur/tata cara yang teratur untuk mengoperasikan data struktur.

    Untuk program yang simpel/sederhana biasanya menggunakan pemrograman terstruktur karena masih mudah dan tidak banyak dilakukan perubahan yang berarti, sedangkan untuk line lebih dari 100 atau bisa dikatakan rumit, maka digunakan pemrograman berorientasi objek. Pemrograman Terstruktur terdiri dari pemecahan masalah yang besar menjadi masalah yang lebih kecil dan seterusnya, sedangkan untuk pemrograman berorientasi objek terdiri dari pengkelompokan kode dengan data yang mana setiap objek berfungsi secara independen sehingga untuk setiap perubahan kode tidak tergantung pada kode yang lainnya, atau lebih dikenal dengan modular. Terdapat juga perbedaan secara spesifik antara Pemrograman Berorientasi Objek dengan Pemrograman Terstruktur, yaitu pada kelas dan objek. Pada Pemrograman Terstruktur tidak terdapat kelas dan objek.

    Kalau di Terstruktur ada "function", di OOP ada "method". Kalau di Terstruktur ada "modules", di OOP ada "objects". Kalau di Terstruktur ada "argument", di OOP ada "message". Begitu juga dengan "variabel" yang ada di Terstruktur, di OOP lebih dikenal dengan nama "atribut".

    Perbandingan Pemrograman Terstruktur Dan Pemrograman Berorientasi Objek.

    Pemrograman Terstruktur
    Pemrograman Berorientasi Objek
    Memecah program dalam fungsi dan data
    Menggabungkan fungsi dan data dalam kelas – kelas atau objek - objek
    Memiliki ciri Sequence (berurutan), Selection (pemilihan) dan Repetition (perulangan)  
    Memiliki ciri Encapsulation (pengemasan), Inheritance (penurunan sifat) dan Polymorphism (perbedaan bentuk dan perilaku)
    Struktur program rumit karena berupa urutan proses dan fungsi-fungsi 
    Struktur program ringkas, cukup dengan membuat Objek dan class lalu bekerja berdasarkan object dan class tersebut.
    Re-use kode program kurang
    Kode program sangat re-usable. object dan class dapat digunakan berkali-kali, sehingga dapat menghemat space memori.
    Efektif digunakan untuk menyelesaikan masalah kecil dan tidak cocok untuk menyelesaikkan masalah yang rumit, karena nantinya akan kesulitan menemukan solusi permasalahan ketika terjadi error
    Efektif digunakan untuk menyelesaikan masalah besar, karena OOP terdiri dari class-class yang memisahkan setiap kode program menjadi kelompok - kelompok kecil, sesuai dengan fungsinya
    Mudah diawal, namun kompleks diproses selanjutnya
    Sulit diawal (karena harus membuat class) namun selanjutnya akan terasa mudah dan cepat
    Eksekusi lebih lambat karena setiap perintah dikerjakan berurutan
    Eksekusi lebih cepat karena dieksekusi bersamaan, program hanya mengatur Objek, properties dan method-nya saja

    Pada dasarnya Pemrograman Berorientasi Objek maupun Terstruktur tidak ada yang dapat dikatakan lebih baik karena keduanya memiliki spesifikasi tersendiri dalam pemrogramannya. Pemrograman Terstruktur fokus pada bagaimana cara komputer menangani masalah, sedangkan Pemrograman Berorientasi Objek fokus pada masalah yang ditangani dengan menggunakan komputer. Pemrograman Terstruktur biasanya digunakan untuk membuat program yang simpel/sederhana karena masih mudah dan tidak banyak dilakukan perubahan yang berarti, sedangkan Pemrograman Berorientasi Objek cocok digunakan untuk pembuatan software yang rumit dan kompleks karena memberikan berbagai kemudahan kepada programmer seperti yang telah disebutkan diatas. Pemrograman Berorientasi Objek lebih mudah dipelajari bagi pemula dibanding dengan pendekatan sebelumnya, dan pendekatan Pemrograman Berorientasi Objek lebih mudah dikembangkan dan dirawat.

    Sekian penjelasan tentang Perbedaan Pemrograman Terstruktur Dan Pemrograman Berorientasi Objek. Semoga bisa membantu teman-teman dalam menentukan konsep pemrograman yang akan dipakai saat membuat program.

    Hosting Unlimited Indonesia

    Indra Setyawantoro

    Author

    Belajar untuk Mengajar, Mengajar untuk Belajar.

    5 komentar:

    1. Wah bagus ini mas artikelnya. Sangat bermanfaat buat yang belajar programming. Ditunggu artikel tentang konsep program yang lainnya ya mas.

      ReplyDelete
    2. Baguuuuss, mudah banget dipahami, semoga ilmunya berkah untuk kedua belah pihak :) makasiiii

      ReplyDelete
    3. Bagus banget tulisannya, mudah dipahami.

      ReplyDelete
    4. Terimakasih brader..cepat pahan ni..

      ReplyDelete

    Copyright © 2015 - 2023 Indra Satya. All rights reserved. Blogger Templates