WordPress dan Pemrograman Berorientasi Objek – Gambaran Umum
Diterbitkan: 2021-04-20Jika Anda seorang pengembang WordPress, kemungkinan Anda menulis kode dengan cara yang prosedural. Anda mengatur beberapa langkah berurutan sederhana dan mengikutinya untuk mencapai hasil yang diinginkan dan memecahkan masalah. Contoh sederhana adalah loop WordPress seperti yang ditunjukkan di bawah ini:
<?php if ( have_posts() ) { while ( have_posts() ) { the_post(); // // Post Content here // } // end while } // end if ?>
Dalam satu lingkaran, pertama-tama Anda memeriksa apakah Anda memiliki postingan yang sesuai dengan kueri yang sedang berjalan dan jika demikian, Anda mulai mengulang postingan dengan loop while. Hal yang sama berlaku untuk setiap fungsi kustom yang akan Anda masukkan ke dalam file functions.php
.
Pada artikel ini kita akan beralih dari pemrograman prosedural dan melihat gaya pemrograman yang disebut Pemrograman Berorientasi Objek (OOP). Kami akan memeriksa bagaimana ini berbeda dari apa yang telah Anda gunakan sejauh ini sebagai gaya pemrograman dan melihat beberapa keuntungannya. Tetapi yang paling penting, kami akan menjelaskan bagaimana konsep berorientasi objek bekerja di lingkungan WordPress dan hubungan di antara mereka.
Apa yang ingin kita bangun sebelum kita masuk lebih jauh adalah bahwa penting bagi Anda untuk belajar tentang peran pemrograman berorientasi objek dan kapan itu cocok untuk digunakan. Mempelajari cara membuat plugin atau tema berorientasi objek mungkin cocok untuk proyek Anda, tetapi penting bagi Anda untuk memahami saat ini masalahnya. Semoga artikel ini akan membantu Anda memahami kapan dan mengapa suatu proyek tertentu mungkin cocok untuk ditulis dalam kode berorientasi objek.
Masalah
WordPress sendiri telah mendorong Anda untuk berpikir secara prosedural. Dan, meskipun WordPress menggunakan objek PHP sepanjang waktu, itu tidak berarti bahwa WordPress itu sendiri Berorientasi Objek. Ini adalah salah tafsir umum tentang apa itu OOP dan alasan banyak orang percaya WordPress Berorientasi Objek meskipun tidak.
Penting untuk mengklarifikasi bahwa kami tidak mengatakan Anda harus menahan diri untuk tidak menggunakan pemrograman prosedural, tetapi memang benar bahwa ada batasan dalam gaya pengkodean ini. Misalnya, saat menyesuaikan tema atau plugin, kemungkinan besar Anda akan mencapai output HTML yang diinginkan dengan menulis kode secara prosedural. Tapi bagaimana dengan skalabilitas dan pemeliharaan di masa depan?
Saat membuat plugin khusus, sangat penting bagi Anda untuk mengambil stok dan menilai seberapa skalabelnya. Misalnya, Anda mungkin ingin dapat mengembangkan plugin Anda dengan menambahkan fitur lebih lanjut saat plugin matang. Pada titik inilah Anda akan mulai mengalami kesulitan mengatur kode Anda ketika Anda membuat kode secara prosedural.
Tetapi bahkan jika Anda bukan plugin pengkodean, dengan pemrograman prosedural Anda selalu mengambil risiko mencapai titik di mana Anda tidak yakin bagaimana semuanya cocok lagi. Akibatnya, setiap perubahan kecil yang Anda buat mungkin memiliki konsekuensi yang tidak diinginkan.
Pemrograman berorientasi objek digunakan untuk memecahkan masalah yang lebih rumit. Ini mungkin berbagi tujuan yang sama dengan pemrograman prosedural, tetapi dalam banyak kasus menawarkan cara kerja yang unggul. Hal ini memungkinkan Anda untuk membuat solusi berani untuk masalah yang dapat digunakan kembali, terorganisir dan aman.
Bagaimana Pemrograman Berorientasi Objek Memecahkan Masalah
Pemrograman berorientasi objek memiliki dua konsep penting: Kelas dan Objek .
Kelas pada dasarnya adalah template yang digunakan untuk membuat objek. Setiap objek memiliki metode dan kumpulan propertinya sendiri dan nilai properti tersebut dapat bervariasi.
Jadi sebelum melangkah maju, sangat penting untuk memastikan bahwa kita memahami apa itu Object. Mari kita uraikan sebuah kalimat sederhana sebagai contoh:
'Saya makan apel hijau'.
Apple adalah Obyek, hijau adalah warna Obyek (properti Obyek) dan kata kerja 'makan' adalah metode (fungsi).
Kelas mendefinisikan properti dan perilaku semua objek yang menggunakannya. Memecahkan masalah dengan OOP dicapai dengan menggabungkan 'batu bata' pemrograman ini dengan cara yang benar.
Sebelum menyelam, langkah pertama yang penting adalah meluangkan waktu untuk merancang solusi yang Anda usulkan. Intinya, yang perlu Anda lakukan adalah:
- Tentukan masalahnya dan apa yang harus dilakukan plugin untuk menyelesaikannya
- Jelaskan kelas dan hubungan mereka serta interaksi antara objek
- Ubah semuanya menjadi kode
- Tinjau dan uji proyek
Saat Anda berada di langkah ini, ingatlah bahwa Anda akan beruntung jika berhasil melakukannya dengan sempurna pada percobaan pertama! Anda harus memulai dari awal sampai Anda mendapatkan konsep yang tepat yang akan menyelesaikan masalah. Anggap itu sebagai bagian dari proses kreatif yang akan menawarkan Anda seperangkat alat yang nantinya dapat Anda gunakan sebagai tim tanpa konflik.


Dalam artikel berikutnya yang terkait dengan OOP, kami akan menunjukkan contoh sederhana yang akan menghidupkan semua teori di atas.
Fitur Pemrograman Berorientasi Objek
Sebelum kita masuk ke fitur pemrograman Berorientasi Objek, mari kita lihat apakah kita dapat lebih memperjelas cara kerjanya dengan metafora sederhana.
Katakanlah kita memiliki ketel yang kita gunakan untuk merebus air. Saat kami menggunakan mesin, kami melakukannya dengan cara tertentu, satu-satunya cara yang diizinkan oleh pabrikan. Kami tidak dapat mengesampingkan cara boiler berjalan ketika kami menekan tombol 'On' dan, sejujurnya, kami juga tidak menginginkan atau membutuhkannya. Itu memberi kita dua keuntungan yang sangat penting.
Pertama-tama, fungsi yang terbatas (yaitu untuk merebus air) berarti sistem ini lebih kuat dan lebih aman. Set fitur terbatas dan penyediaan hanya tombol 'On/Off' berarti kita, sebagai pengguna, tidak bisa mendekati mekanisme boiler. Secara default, ini berarti lebih sedikit kesalahan dan sistem lebih kuat secara keseluruhan. Kesederhanaan operasi juga membuatnya lebih ramah pengguna dengan hampir semua orang dapat menggunakannya.
Dengan mengingat hal ini mari kita lihat bagaimana hal ini berhubungan dengan pemrograman Berorientasi Objek. Secara teori, OOP memiliki tiga karakteristik berharga: Enkapsulasi, Warisan, dan Polimorfisme .
Apa yang dilakukan Enkapsulasi adalah mengelompokkan data dan perilaku di dalam satu entitas. Di dalam Kelas, Anda dapat menentukan bagaimana itu akan digunakan (tombol boiler) dan mengontrol visibilitas dengan menggunakan pelabelan Publik, Dilindungi, atau Pribadi di Kelas. Inilah yang juga menjadikannya sistem yang sangat aman karena memberi Anda kemampuan untuk mengontrol siapa yang memiliki akses. Ini juga berarti lebih mudah untuk dirawat dan juga digunakan.
Warisan adalah tentang membantu Anda menggunakan kembali kode di antara kelas-kelas Anda. Salah satu contohnya adalah ketika suatu Kelas memperluas Kelas lain. Anda mungkin telah menggunakan ini saat memperluas Kelas Walker untuk mengubah output HTML dari data seperti pohon seperti struktur menu atau komentar. Memahami hubungan antara kelas Anda akan memungkinkan Anda membuat kode berorientasi objek yang dapat digunakan kembali.
Akhirnya Polimorfisme adalah apa yang membuat semua hubungan itu bekerja bersama, apa yang mendefinisikan kesamaan apa yang dimiliki Kelas Anda, bagaimana menggunakan kembali elemen-elemen umum ini dan apakah mereka terkait dengan hal lain.
Kesimpulan
Tanpa beberapa contoh konkrit kemungkinan semua hal di atas masih sedikit membingungkan. Namun tidak kalah pentingnya untuk menguraikan teori di balik pemrograman Berorientasi Objek dan di artikel mendatang kami akan melanjutkan ini dengan beberapa contoh berguna sehingga Anda dapat melihat bagaimana menggunakan metode pemrograman yang menarik ini di dunia nyata.
Tujuan kami adalah ketika Anda menyimpulkan membaca rangkaian artikel kami di OOP, Anda akan percaya diri untuk menggunakan metode pemrograman ini dalam berbagai situasi. Sementara itu, Anda mungkin ingin melanjutkan membaca tentang OOP di Wikipedia.
Klik di sini untuk membaca Bagian 2 dalam Seri Pemrograman Berorientasi Objek kami