Keuntungan & Kerugian Pemrograman Berorientasi Objek

Kode komputer. Layar hijau tua

Sebagian besar aplikasi PC dan seluler modern menggunakan teknik OOP.

Kredit Gambar: SoulArt/iStock/Getty Images

Bahasa Pemrograman Berorientasi Objek seperti C++, Java dan Visual Basic dikembangkan oleh para ilmuwan komputer untuk mempercepat pemrograman dan meningkatkan kualitas perangkat lunak. Teknik perangkat lunak OOP memecah program menjadi blok fungsional yang disebut objek, membuatnya sering dibutuhkan fitur seperti tombol kontrol, manajemen basis data, dan matematika lebih mudah digunakan dan dibagikan di antara programmer. Namun, keuntungan datang dengan pengorbanan seperti kompleksitas perangkat lunak yang ditambahkan dan kinerja yang berkurang.

Produktivitas yang Lebih Baik

Teknik OOP memberlakukan aturan pada programmer yang, dalam jangka panjang, membantunya menyelesaikan lebih banyak pekerjaan; program selesai bekerja lebih baik, memiliki lebih banyak fitur dan lebih mudah untuk membaca dan memelihara. Program yang tidak menggunakan OOP cenderung besar, lembaran teks terus menerus seperti bab yang sangat panjang dalam sebuah buku. Ketika programmer masuk untuk mengubahnya, teks akhirnya menjadi tidak teratur dan lebih sulit untuk diikuti. Sebaliknya, programmer OOP mengambil objek perangkat lunak baru dan yang sudah ada dan "menjahit" mereka bersama-sama untuk membuat program baru. Karena pustaka objek berisi banyak fungsi yang berguna, pengembang perangkat lunak tidak perlu sering menemukan kembali roda; lebih banyak waktu mereka digunakan untuk membuat program baru.

Video Hari Ini

Biaya Pemrograman Lebih Rendah

Khusus untuk proyek yang lebih besar, OOP membantu mengurangi biaya tenaga kerja pemrograman. Staf yang mengerjakan proyek dapat mengembangkan perpustakaan objek perangkat lunak mereka sendiri, memungkinkan pemrogram menggunakan pekerjaan satu sama lain dengan mudah dan mengurangi jam yang dibutuhkan untuk mengembangkan program. Dengan peningkatan kualitas perangkat lunak, pengembang menghabiskan lebih sedikit waktu untuk memperbaiki program yang tidak berfungsi, yang selanjutnya mengurangi biaya tenaga kerja.

Kurva Belajar yang Lebih Curam

Untuk menguasai OOP, seorang pemula harus mempelajari konsep baru yang abstrak seperti polimorfisme -- menggunakan kembali objek sambil menambahkan fitur baru padanya -- dan enkapsulasi -- menyembunyikan bagian dari data internal objek untuk meningkatkan keamanan -- tidak ada ide yang ditemukan dalam gaya pemrograman yang lebih lama. Konsep-konsep ini tidak hanya membutuhkan waktu untuk dipelajari, mereka mungkin terlalu rumit untuk calon programmer yang lebih muda atau mereka yang hanya memprogram sesekali.

Perangkat Lunak Lebih Lambat

Perangkat lunak berorientasi objek dapat memerlukan kode housekeeping tambahan yang tidak diperlukan dalam bahasa komputer lain; komputer harus menjalankan pemrograman tambahan, memperlambat waktu respons aplikasi. Untuk proyek yang mengutamakan kecepatan, pemrogram dapat memilih untuk menulis bagian yang paling kritis terhadap waktu di non-OOP bahasa seperti assembler atau C, memesan kode OOP untuk windows atau tombol -- area di mana objek memiliki kejelasan keuntungan.