Halo semuanya, kembali lagi di tulisan saya. Pada kesempatan kali ini kita akan membahas apa itu structural programming dan object oriented programming, lalu apa perbedaan keduanya. Ayo ikuti selengkapnya di bawah ini.
Apa itu Structural Programming?
Pemrograman terstruktur adalah jenis pemrograman yang membagi fungsi atau modul menjadi beberapa bagian, bisa disebut juga sebagai modular programming. Setiap modul memiliki fungsinya masing-masing dan dieksekusi saat modul itu dipanggil. Structural Programming Pattern, Foto: Orion 8,CC0, via Wikimedia Commons
Model pemrograman modular seperti ini tentu sangat memudahkan programmer untuk melakukan testing dan mendebug bagian kode tertentu. Jenis bahasa pemrograman yang mendukung hal ini adalah bahasa C, Pascal, dan Php.
Dalam bahasa pemrograman php, pengguna dapat membuat custom fungsi yang diletakkan di dalam file terpisah. Lalu fungsi tersebut dipanggil hanya pada file tertentu saja, hal ini sangat efisien dan tidak membuat banyak pengulangan.
Cara kerja dari jenis pemrograman ini cukup sederhana, setiap fungsi yang dipanggil akan dieksekusi terlebih dahulu lalu dilanjukan ke baris setelahnya. Jenis pemrograman ini sangat mudah dipelajari untuk langkah awal belajar bahasa pemrogaman.
Apa itu Object Oriented Programming?
Object Oriented Programming adalah jenis atau model pemrograman yang memungkinkan programmer untuk membuat program berbasis sebuah ojek. Objek adalah entitas apapun di dunia nyata, memiliki atribut dan perilaku. Visualiasi Class dan Object di dalam OOP, foto: Pluke, CC0, via Wikimedia Commons
Contoh dari objek adalah budi. Budi memiliki atribut berupa tangan, kaki, mulut, kepala, hidung dsb. Budi juga memilki perilaku seperti makan, berjalan, berpikir, dsb.
Contoh lain dari objek adalah honda beat. Honda beat memiliki atrbut seperti ban, spion, rem, engine, lampu, dsb. Honda beat juga memiliki perilaku atau method seperti berjalan, menghidupkan lampu, membunyikan klakson, berhenti, dsb.
Jadi semua yang ada di bumi dapat kita sebut sebagai objek tanpa terkecuali. Jadi itulah maksud dari object oriented programming. Terdapat istilah object, attribute, method. Selain 3 istilah tersebut terdapat istilah lain seperti:
1. Class - adalah blueprint atau cetakan untuk membuat banyak objek. Misalnya: manusia adalah class, budi, eko, sinta adalah objek.
2. Enkapsulasi - Mengikat atau menggabungkan properti dan metode menjadi satu unit
3. Inheritance - Memungkinkan kelas untuk menggunakan properti dan metode dari kelas yang sudah ada.
4. Polimorfisme – Memungkinkan suatu objek untuk tampil dalam berbagai cara – Overloading dan overriding adalah dua cara untuk mencapai polimorfisme.
Perbedaan Antara Pemrograman Terstruktur dan Berorientasi Objek
No | Spesifikasi | Structural Programming | Object Oriented Programming |
1 | Definisi | Pemrograman terstruktur adalah paradigma pemrograman yang membagi kode menjadi modul atau fungsi | Object oriented programming adalah paradigma pemrograman yang didasarkan pada konsep objek, variabel yang menempel pada sebuah objek disebut sebagai atribut, dan kode prosedur disebut sebagai metode. |
2 | Fokus Utama | pemrograman terstruktur berfokus pada membagi program menjadi satu set fungsi di mana setiap fungsi bekerja sebagai subprogram | pemrograman berorientasi objek berfokus pada merepresentasikan program menggunakan satu set objek yang merangkum data dan objek. |
3 | Modifikasi | sulit untuk memodifikasi program terstruktur | lebih mudah untuk memodifikasi program Berorientasi Objek. |
4 | Komunikasi | Dalam pemrograman terstruktur, metode utama berkomunikasi dengan fungsi dengan memanggil fungsi-fungsi tersebut dalam program utama | dalam pemrograman berorientasi objek, objek berkomunikasi satu sama lain dengan mengirimkan pesan |
5 | Penentu Akses | Tidak ada penentu akses dalam pemrograman terstruktur | da penentu akses seperti pribadi, publik dan dilindungi dalam Pemrograman Berorientasi Objek |
6 | Keamanan | data tidak aman dalam pemrograman terstruktur | lebih aman dalam pemrograman berorientasi objek |
Jadi itulah sedikit penjelasan tentang pengertian dan perbedaan antara structural programming dan object oriented programming. Semoga bermanfaat, jika ada yang ingin didiskusikan silahkan tinggalkan komentar di bawah ini. Sekian dan sampai jumpa.
Posting Komentar