Daftar isi
Perangkat lunak atau program komputer dibuat atau ditulis dengan menggunakan bahasa pemrograman. Bahasa pemrograman memiliki kode perintah tertentu dengan aturan penulisan khusus yang berupa sintaks.
Pada proses penulisannya, sebenarnya mirip dengan penulisan karya tulis biasa, akan tetapi bahasa yang digunakan haruslah bahasa yang bisa diterjemahkan atau dimengerti oleh komputer dan bertujuan untuk memberikan perintah.
Sebagaimana karya tulis pada umumnya, seorang programmer akan memiliki gaya penulisan yang unik, serta akan berbeda dengan programmer yang lainnya.
Di dalam penulisan sebuah program akan terkandung berbagai pola pikir, prinsip, juga struktur berdasarkan gaya penulisannya yang dapat memudahkan semua prosesnya. Gaya atau pola penulisan bahasa pemrograman dalam pembuatan sebuah program komputer biasa disebut paradigma pemrograman.
Saat ini terdapat lima jenis paradigma pemrograman. Kelima jenis tersebut adalah pemrograman fungsional, prosedural, PBO/OOP, deklaratif, dan struktural. Di bawah ini hanya akan dijelaskan tentang paradigma pemrograman OOP dan prosedural.
Paradigma secara umum adalah suatu jalan atau aliran pemikiran yang memiliki karakteristik, kerangka kerja, gaya, dan pola yang berbeda untuk membantu kita dalam memecahkan masalah tertentu. Penggunaan paradigma terdapat pada segala bidang, seperti sosiologi, psikologi, etimologi, ilmu komputer dan lain-lain.
Sedangkan dalam ilmu komputer, yang disebut paradigma pemrograman adalah gaya, teknik atau pola penulisan sebagai konsep yang digunakan dalam pembuatan suatu program untuk menentukan cara kerja serta bahasa pemrogramannya.
Dengan demikian, paradigma pemrograman memiliki peranan yang sangat penting dalam pembuatan sebuah program komputer. Dalam pengaplikasiannya, bahasa-bahasa pemrograman bisa saja mengikuti paradigma tertentu ataupun gabungan antara beberapa paradigma.
Object-Oriented Programming (OOP) atau dalam bahasa Indonesia berarti pemrograman berorientasi objek (PBO) ialah paradigma atau teknik pemrograman yang konsep dasar penulisannya adalah objek. Objek tersebut dapat berisi data, dalam bentuk field atau yang juga dikenal sebagai atribut, dan kode, dalam bentuk fungsi atau prosedur yang dikenal sebagai method.
OOP memiliki tujuan yaitu untuk memudahkan programer dalam membuat program menggunakan konsep objek yang terdapat pada kehidupan sehari-hari. Sehingga setiap bagian permasalahan merupakan objek, dan setiap objek adalah gabungan dari beberapa objek yang lebih kecil lagi.
Data dan fungsi dalam paradigma OOP disatukan dalam objek-objek atau disebut juga kelas. OOP dianggap efisien karena selain memuat fungsi yang bisa digunakan ulang, juga dalam setiap parameter yang dikirim dan diterima oleh fungsi dapat menjadi dinamis.
Bahasa pemrograman yang dapat mendukung paradigma OOP diantaranya C++, Java Python, dan PHP.
Penggunaan OOP memiliki kelebihan sebagai berikut:
Sementara kekurangan dari OOP adalah:
Pemrograman prosedural atau procedural programing adalah sebuah paradigma pemrograman yang dilakukan dengan memberikan sejumlah perintah secara berurutan atau dikenal juga sekuensial. Konsepnya berdasarkan pada konsep mesin Von Neumann yaitu stored program concept, memori, dimana memori tersebut dibedakan menjadi memori data dan memori instruksi.
Memori-memori tersebut bisa diberi nama dan nilai. Kemudian perintah akan diolah satu per satu dengan cara sekuensial oleh sebuah perintah tunggal. Ini berarti komputer diberikan daftar perintah yang harus dilakukan berurutan untuk menyelesaikan tugas yang ada.
Bahasa pemrograman yang mendukung pemrograman prosedural adalah Pascal, PHP, C/C++, dan Python.
Meski pemrograman prosedural terlihat tidak terlalu istimewa, karena paradigma ini yang merupakan konsep awal dari penulisan program komputer, tetapi ternyata memiliki beberapa kelebihan. Kelebihan tersebut adalah:
Sedangkan kekurangan dari paradigma ini yaitu:
Terdapat beberapa perbedaan antara OOP dan Prosedural. Di bawah ini merupakan tabel perbedaan antara keduanya:
NO | OOP | NO | PROSEDURAL |
1 | Penekanannya pada data yang tengah beroperasi dan tidak pada fungsi atau prosedur | 1 | Berfokus pada fungsi dan prosedur yang beroperasi pada data secara teratur |
2 | Program dibagi pada kelas-kelas atau yang disebut objek. | 2 | Program besarnya terbagi dalam program-program dalam unit kecil yang disebut fungsi |
3 | Objek-objek memiliki sifat aktif | 3 | Datanya bersifat pasif |
4 | Bisa dipergunakan untuk memecahkan masalah yang kompleks | 4 | Cocok untuk pemecahan masalah sederhana |
5 | Atribut/data tidak dapat diakses dan diubah secara langsung, melainkan harus melalui suatu metode | 5 | Atribut/data dapat diakses serta diubah nilainya secara langsung |
6 | Kode dapat digunakan ulang pada program lain | 6 | Kode tidak dapat digunakan ulang |