Jawaban:
Saya dapat mengatakan dengan kepastian sekitar 99,9999% bahwa WordPress tidak akan pernah menjadi OOP sepenuhnya di versi mendatang, tidak terkecuali bahwa topik tersebut telah muncul berulang kali pada daftar wp-hacker dan anggota tim inti telah menyatakan tidak tertarik pada melakukannya.
Ketika saya melihat pengalaman pribadi saya dengan pemrograman dan pengajaran OOP mulai sekitar tahun 1990, saya setuju dengan tim inti dan berpikir OOP lengkap akan menjadi kesalahan. Walaupun saya pernah menjadi OOP fanatik dan mengira OOP adalah obat mujarab saya sejak itu percaya bahwa ia memiliki nilai dalam beberapa konteks tetapi dalam konteks lain ia menghalangi.
Salah satu masalah terbesar yang saya temukan dengan OOP adalah memaksa pengembang untuk memanggang struktur jauh sebelum pengembang benar-benar memahami apa yang seharusnya menjadi struktur yang kemudian mengarah ke masalah kelas dasar yang rapuh .
Tentu saja untuk aspek WordPress tertentu, OOP sangat masuk akal dan jika Anda mempelajari inti Anda akan menemukan kelas-kelas seperti itu; Widget
, List_Tables
(dalam 3.1) , dll.
Pada titik ini saya senang bekerja dengan WordPress dalam sebagian besar paradigma non-OOP dan berpikir bahwa jika itu murni OOP WordPress tidak akan pernah mendapatkan yang berikut ini. Mengapa? Karena OOP akan meningkatkan kerumitan bagi calon WordPress dan pengembang plugin, dan kemungkinan akan menghasilkan aplikasi yang tidak cukup fleksibel untuk berkembang sebagai tim inti belajar lebih banyak tentang kebutuhan penggunanya di masa lalu. 6 tahun.
FWIW.
Banyak komponen WP ditulis ulang dalam kode OOP dengan setiap rilis baru, dan komponen-komponen baru cenderung memanfaatkannya (misalnya WP_Customizer
hal itu). Tetapi jika Anda bertanya apakah WP akan mengubah arsitekturnya menjadi berorientasi objek sepenuhnya - maka tidak, saat ini tidak ada informasi yang menyarankan hal seperti itu.
Saya tidak akan melangkah terlalu jauh untuk mengatakan bahwa itu tidak akan pernah terjadi, tetapi sepertinya tidak akan terjadi dalam waktu dekat, dan mungkin bukan karena masalah "kelas dasar" :)
Pertama-tama, hanya ada kelemahan dalam menggunakan kode prosedural lebih dari OOP untuk aplikasi CMS seperti WordPress, hanya karena aplikasi tersebut dimaksudkan untuk diperluas melalui plugin. Melemparkan campuran fungsi dan variabel global tidak membuat ini lebih mudah. Pada saat WP ditulis, tidak ada yang bisa meramalkan akan menjadi apa WP dan banyak pilihan buruk dibuat. Sekarang cukup sulit untuk mengejar ketinggalan, karena sebagian besar plugin dan tema akan berhenti berfungsi dengan baik. Menerapkan lapisan kompatibilitas yang sangat besar untuk menghindari hal itu kemungkinan akan memperlambat WP dan menambah kebingungan di antara para pengembang. Juga pikirkan tujuan - untuk memudahkan kehidupan pengembang, dengan biaya pengguna?
Jika itu membantu - diskusi yang sangat lama tentang wp-hacker tetapi masih relevan dengan topik ini, dan ide yang diajukan oleh komunitas, sekarang ditandai sebagai "wilayah plugin". Saya belum melihat aktivitas lain ke arah ini baru-baru ini.