Jika Anda berpikir kembali mengapa OO ditemukan, Anda akan melihat bahwa Anda tidak membutuhkan OOP sama sekali, tetapi kadang-kadang itu membuat hidup Anda jauh lebih mudah.
Kembali pada zaman C coding, sebuah program yang sangat besar bisa menjadi sangat berantakan dan sulit untuk terus bekerja. Jadi mereka menemukan cara untuk memecahnya menjadi potongan modular. OOP mengambil pendekatan ini dan membuatnya lebih modular, menempatkan data dengan potongan-potongan logika program sehingga mereka lebih terpisah dari sisa kode.
Hal ini memungkinkan Anda untuk menulis program yang lebih besar dan lebih besar, aman karena Anda telah mengubah tugas besar gajah Anda menjadi seratus tugas berukuran tikus. Bonus tambahan adalah Anda dapat mengambil beberapa 'tikus' ini dan menggunakannya kembali di program lain!
Tentu saja, dunia nyata tidak seperti itu, dan penggunaan kembali objek tidak pernah benar-benar terjebak dalam cara yang dimaksudkan, tetapi itu tidak berarti itu adalah paradigma yang tidak berguna.
Apa yang tidak berguna adalah ketergantungan yang berlebihan pada kedua gaya pengkodean. Siapa pun yang melakukan OO dengan seribu kelas kecil dan tidak signifikan tidak benar-benar melakukannya dengan benar - mereka membuat mimpi buruk pemeliharaan untuk diri mereka sendiri (atau orang lain). Siapa pun yang menulis aplikasi prosedural yang hanya 3 fungsi juga membuat hidup menjadi sulit. Cara terbaik adalah middlle ground, objek besar-ish (kadang-kadang disebut komponen yang mana kita melihat sekali waktu) yang dapat memberikan cukup banyak kode yang berdiri sendiri dan data yang jauh lebih mungkin untuk digunakan kembali dalam isolasi dari sisa aplikasi Anda.
Saran saya untuk waktu berikutnya: cobalah menulis kode prosedural Anda yang biasa, tetapi buat satu objek dari struktur data utama Anda. Lihat bagaimana Anda menemukan bahwa bekerja dengannya lebih mudah daripada mengirimkan data dari satu fungsi ke fungsi lainnya.