Sebelum membincangkan perbezaan antara OOP dan POP, mari kita mulakan terlebih dahulu beberapa konsep dasar proses pengaturcaraan. Terdapat banyak pendekatan yang berbeza untuk proses pengaturcaraan apabila membina penyelesaian untuk pelbagai jenis masalah menggunakan pengaturcaraan. Pendekatan ini dikenali sebagai paradigma pengaturcaraan. Kebanyakan bahasa pengaturcaraan berada di bawah satu paradigma, tetapi mungkin ada bahasa yang mempunyai unsur-unsur paradigma berganda. Pemrograman Berorientasi Objek (OOP) dan Pengaturcaraan Berorientasikan Prosedur (POP) adalah dua paradigma pengaturcaraan sedemikian. Kedua-dua paradigma ini berbeza-beza kerana abstraksi yang mereka buat ketika merancang penyelesaian. Pengekstrakan dalam pendekatan pengaturcaraan memisahkan kaitan maklumat dari perspektif pengguna perbezaan utama antara POP dan OPP itu POP mencipta dan menggunakan abstraksi prosedur sementara OOP memberi tumpuan kepada abstraksi data.
Pemrograman Berorientasi Objek (OOP) berdasarkan dua konsep utama; objek dan kelas. Objek adalah struktur yang mengandungi kedua-dua data dan prosedur untuk mengendalikan data tersebut. Objek ini boleh digunakan untuk memodelkan entiti dunia sebenar. Objek mempunyai dua ciri; keadaan dan tingkah laku. Kelas menentukan format dan prosedur data untuk sesuatu jenis atau kelas objek. Dengan kata lain, kelas adalah pelan tindakan objek.
Pendekatan OOP memberi tumpuan terutamanya pada data dan bukan pada algoritma untuk mengendalikan data. Oleh kerana kedua-dua data dan fungsi yang mengendalikan data tersebut dibundel dalam objek, tiada modifikasi boleh dilakukan pada data oleh fungsi luaran. Iaitu, data sesuatu objek tidak dapat diakses oleh fungsi objek lain. Ini memastikan keselamatan data sesuatu program. Tetapi, fungsi objek boleh mengakses fungsi objek lain yang membolehkan objek berkomunikasi dengan satu sama lain. Ini menggunakan kaedah satu objek dengan kaedah objek lain dikenali sebagai lulus mesej.
Pengaturcaraan OOP mempunyai empat ciri utama; abstraksi, enkapsulasi, polimorfisme, dan warisan. Tujuan abstraksi adalah untuk memaparkan hanya maklumat yang relevan kepada pengguna supaya kerumitan masalah dikurangkan. Encapsulation adalah penyetempatan maklumat dalam objek. Proses di mana satu kelas memperoleh sifat dan fungsi kelas lain dikenali sebagai warisan. Polimorfisme adalah ciri fungsi yang mempunyai banyak tanda tangan atau objek yang berkelakuan dalam pelbagai cara.
OOP juga menyokong modularity tinggi. Menambah fungsi atau data baru tidak memerlukan mengubah program lengkap. Ini hanya boleh dilakukan dengan membuat objek baru kerana objek adalah bebas untuk mengisytiharkan dan mentakrifkan. Oleh itu, OOP boleh menjadi produktiviti yang cekap dan tinggi.
Memandangkan reka bentuk pengaturcaraan, OOP mengikuti pendekatan bawah. Beberapa bahasa OOP yang popular adalah Java, Python, Perl, VB.NET, dan C++.
Python adalah bahasa OOP yang popular.
Pemrograman Berorientasikan Prosedur (POP) memandang masalah ini sebagai urutan perkara yang perlu dilakukan dan berdasarkan konsep panggilan prosedur. Program dibahagikan kepada seksyen kecil yang dipanggil prosedur - juga dikenali sebagai rutin, subrutin, kaedah atau fungsi. Prosedur menekankan pada algoritma apa yang perlu dilakukan dalam program. Iaitu, prosedur mengandungi satu siri langkah pengiraan yang akan dijalankan. Oleh kerana fungsi-fungsi ini berorientasikan tindakan, menggunakan bahasa POP kadang-kadang boleh menjadi sukar apabila memodelkan masalah dunia sebenar.
POP memberi tumpuan lebih kepada menulis senarai arahan untuk memaklumkan komputer tentang apa yang harus dilakukan secara berturut-turut. Kurang perhatian diberi kepada data yang berkaitan dengan program ini. Data boleh diluluskan di antara prosedur dan setiap prosedur mengubah data dari satu bentuk ke bentuk yang lain. Kebanyakan data adalah global dan boleh diakses secara bebas daripada sebarang fungsi dalam sistem. Dan sejak POP tidak menyokong teknik yang berkesan untuk menyembunyikan data, program mungkin tidak selamat. Sesetengah fungsi mungkin mempunyai data tempatan mereka sendiri.
Dalam POP, mungkin sukar untuk mengenal pasti data yang digunakan oleh mana fungsi pada masa-masa sejak data global sebahagian besarnya dikongsi antara fungsi. Sekiranya data yang sedia ada perlu ditukar, semua fungsi yang telah mengakses data tersebut perlu disemak semula. Ini mungkin menjejaskan keseluruhan program, dan pepijat dan kesilapan boleh berlaku.
Memandangkan reka bentuk pengaturcaraan, bahasa POP menggunakan pendekatan atas ke bawah. Oleh kerana bahasa POP membuat rujukan eksplisit kepada keadaan persekitaran pelaksanaan, mereka juga dipanggil bahasa yang penting. Contoh untuk bahasa POP seperti COBOL, Pascal, FORTRAN, dan Bahasa C.
C adalah bahasa popular POP.
OOP: Pemrograman Berorientasi Objek adalah paradigma pengaturcaraan yang memberi tumpuan kepada abstraksi data.
POP: Pengaturcaraan Berorientasikan Prosedur adalah paradigma pengaturcaraan yang memberi tumpuan kepada abstraksi prosedur.
OOP: Dalam pendekatan OOP, program dibahagikan kepada bahagian yang dikenali sebagai objek.
POP: dalam pendekatan POP, program dibahagikan kepada fungsi.
OOP: Fokus utama OOP adalah pada data yang berkaitan dengan program ini.
POP: Fokus utama POP adalah pada prosedur dan algoritma yang memanipulasi data.
OOP: OOP Mengikuti pendekatan bawah.
POP: POP Mengikuti pendekatan atas ke bawah.
OOP: Di OOP, setiap objek mengawal data di dalamnya.
POP: Dalam POP, kebanyakan fungsi menggunakan data global.
OOP: Di OOP, data objek hanya boleh diakses oleh fungsi objek tertentu itu.
POP: Dalam POP, data boleh bergerak bebas dari fungsi ke fungsi.
OOP: OOP mempunyai ciri khas seperti Public, Private, dan sebagainya.
POP: POP tidak mempunyai penunjuk akses.
OOP: Oleh kerana OOP menyediakan persembunyian data, data yang berkaitan dengan program adalah selamat.
POP: POP tidak menyediakan sebarang kaedah bersembunyi data. Oleh itu, data kurang selamat.
OOP: OOP menyediakan cara mudah dan cekap untuk menambah data dan fungsi baru tanpa menyemak semula program sedia ada.
POP: Dalam POP, jika data atau fungsi baru perlu ditambah, program sedia ada perlu disemak semula.
OOP: C ++, Java, VB.NET, C # .NET, dll. Digunakan oleh OOP.
POP: FORTRAN, Pascal, C, VB, COBOL, dan lain-lain digunakan oleh POP.
Image courtesy: "Python logo and wordmark" oleh www.python.org - https://www.python.org/community/logos/.(GPL) via Commons "Logo Bahasa Pemrograman C" oleh Rezonansowy - Fail ini diperolehi dari: Bahasa Pemrograman C, First Edition Cover.svg. (Domain Awam) melalui Commons