Saya pikir bahwa untuk sepenuhnya menghargai model OO, Anda harus memiliki pengalaman gagal total dengan teknik pemrograman non-OO. Anda dapat memahami OO di dalam dan luar, tetapi untuk menghargai dan menghargainya, itu harus menjadi alat baru yang mengkilap yang menggantikan yang berkarat lama yang tidak cukup melakukan pekerjaan.
Saya sendiri belajar sendiri selama 7 tahun sebelum akhirnya belajar OO di tingkat perguruan tinggi Jawa. Sebelum itu, saya akan terus membangun proyek-proyek ini, dan mereka akan menjadi sangat besar sehingga saya akan lupa apa yang sedang terjadi. Mereka akan menjadi besar, tidak terorganisir, dan membutuhkan banyak perawatan untuk membuat perubahan kecil. Pada dasarnya saya terus menemukan diri saya terjebak dengan kode saya dan mulai lagi dari awal terus-menerus.
Butuh beberapa saat untuk mengeluarkan kepala dari desain linier yang saya adopsi, tetapi begitu saya sepenuhnya memahami model OO, rasanya seperti Eureka! Saya dapat membuat kode proyek yang jauh lebih kompleks saya sendiri dan produktivitas saya menembus atap setelah mempelajari konsep-konsep seperti warisan. Saya tidak membuang waktu untuk menulis ulang kode atau memulai lagi, karena secara objektif semuanya masuk akal dan itu hanya intuitif.
Ini adalah pendapat saya bahwa setiap programmer harus tahu bahasa sebanyak mungkin. Ini akan membuat mereka menjadi veteran yang lebih berpengalaman, terlepas dari apakah itu OO atau bukan. Setelah Anda mengerti OO, Anda dapat mengambil teknik-teknik itu dan menerapkannya di mana pun mereka diterapkan.
IMHO, jika Anda tidak mengerti, atau tidak memiliki keinginan untuk belajar OO, Anda tidak akan cukup diperlengkapi di medan perang kehidupan. Semakin banyak perusahaan menggunakan bahasa OO yang lebih baru. Saya tidak melihat alasan untuk tidak tahu model OO hari ini di usia.
Bergantung pada bagaimana orang itu belajar, tergantung pada bagaimana mereka ingin mempelajari model itu. Saya pribadi belajar paling baik ketika seseorang mengajar saya, dan pergi ke kelas untuk Java I dan Java II benar-benar membuat perbedaan besar bagi saya. Saya akan merekomendasikan mengambil pilihan rekayasa perangkat lunak di perguruan tinggi, atau hanya online dan mencari tutorial OO jika Anda tidak memiliki akses ke kursus perguruan tinggi atau ingin belajar di waktu luang Anda.
Ketika saya memikirkan kembali bagaimana hal itu dijelaskan kepada saya, saya katakan; Apple adalah Apple, dan Orange adalah Orange. Ya, mereka berdua jatuh dari pohon, tetapi mereka adalah dua buah yang sama sekali berbeda dan ada harmoni Anda.