* CATATAN: Ini bukan pertanyaan 'mana yang lebih baik'! *
Wordpress dan Joomla! keduanya adalah open source CMS yang mengagumkan.
Apa perbedaan utama
1) dalam arsitektur perangkat lunak antara Joomla! dan Wordpress?
2) dengan cara bagaimana ekstensi ke fungsionalitas inti (out-of-the-box) dibuat? dan
3) Bagaimana inti dan ekstensi ditingkatkan dan diperbarui?
Jawaban:
Wordpress dan Joomla! sangat dihargai dan masing-masing memiliki keunggulan unik ketika Anda membandingkannya.
Untuk menjawab pertanyaan Anda:
dalam arsitektur perangkat lunak antara Joomla! dan Wordpress
Joomla adalah OOP (berorientasi objek) dan MVC (pola desain berorientasi objek).
Wordpress ditulis dalam kode prosedural.
Pemrograman prosedural menentukan langkah - langkah yang harus diambil program untuk mencapai keadaan yang diinginkan, sedangkan pemrograman berorientasi objek ("OOP") mengatur program menjadi objek atau struktur data dan metode bersama dengan interaksinya.
Untuk program sederhana, kode prosedural (pikirkan urutan perintah per baris) bekerja dengan baik, tetapi untuk aplikasi kompleks yang besar, kode prosedural bisa lebih sulit untuk dipelihara - sering menghasilkan apa yang disebut kode spaghetti (yaitu ketika baris-by -rangkaian perintah mulai menggunakan banyak GOTO, pengecualian, utas atau konstruksi percabangan lainnya dan alurnya secara konseptual seperti semangkuk spageti). Dengan kata lain, kode prosedural dimulai dari yang sederhana, tetapi dapat menjadi rumit dan kusut.
Oleh karena itu aplikasi yang lebih kompleks dapat lebih terstruktur dengan OOP dan dengan MVC - gaya pemrograman yang lebih maju yang jauh lebih cocok untuk membangun program yang sangat kompleks dengan banyak bagian yang bergerak.
Sedangkan kode prosedural pada awalnya mungkin lebih mudah untuk ditulis dan dipelihara untuk program-program sederhana, OOP memiliki kelebihan dalam hal itu dapat dengan rapi mengumpulkan kumpulan variabel (disebut 'properties' di OOP) fungsi (disebut 'metode' dalam OOP) menjadi bundel - menghasilkan kode yang lebih rapi, lebih mudah dibaca, dipelihara, dan diperluas.
Untuk sebagian besar aplikasi Wordpress (misalnya blog sederhana), kode prosedural berfungsi dengan baik.
Untuk aplikasi yang lebih kompleks (mis. Yang membutuhkan izin grup pengguna dan yang menggunakan banyak integrasi banyak ekstensi untuk memperluas fitur dan fungsi), OOP umumnya dianggap sebagai pendekatan yang jauh lebih elegan.
Untuk menyimpulkan:
Arsitektur perangkat lunak Worpress (berdasarkan pada kode prosedural) memiliki kelebihan dalam kesederhanaannya, tetapi kode prosedural tidak ideal untuk aplikasi kompleks yang dapat dikembangkan dengan ekstensibilitas yang kuat.
Arsitektur perangkat lunak Joomla! (OOP / MVC) mungkin tampak lebih kompleks, tetapi ketika direkayasa dengan baik, OOP / MVC sebenarnya membuatnya lebih mudah untuk memperluas fitur dan fungsi aplikasi dan agar semua ekstensi itu bekerja bersama secara harmonis.
Jika Anda ingin memahami perbedaan (pada tingkat pemula dasar), baca PHP Prosedural vs PHP OO vs PHP MVC oleh Peham Raza - ia membahas 'seluk beluk' masing-masing dengan cara yang memudahkan untuk lebih memahami manfaatnya.
dengan cara mana ekstensi ke fungsionalitas inti (out-of-the-box) dibuat?
Bagaimana inti dan ekstensi ditingkatkan dan diperbarui
Ada yang mengatakan Wordpress bukan CMS, tetapi sekarang ini adalah CMS dengan semua fitur Joomla dan banyak lagi.
WordPress baik untuk pengguna yang kurang memiliki pengetahuan pengembangan, dan Joomla untuk pengembang.
Semoga ini masuk akal.
sumber
Saya pikir untuk benar-benar menjawab pertanyaan ini, Anda harus terbiasa dengan WP dan Joomla !. Saya Joomla! berat dan hanya menggunakan WP beberapa kali, jadi jawaban saya mungkin tidak penuh seperti yang Anda harapkan.
WP adalah platform blogging pertama dan terutama. Ini diatur untuk umpan data. Anda harus keluar dari cara Anda untuk melewati umpan default untuk mendapatkan halaman Beranda statis biasa. Ini tidak sulit, hanya saja tidak default. Jika Anda tahu apa yang Anda lakukan, Anda dapat memperluas WP untuk bergerak melampaui platform blogging, atau jika Anda mengunduh template yang sudah melakukannya untuk Anda.
Joomla adalah CMS pertama dan terpenting. Ini dibangun untuk menampung situs web yang lengkap, termasuk blogging, langsung dari inti dasarnya. Plugin membantu, mereka bisa memberi Anda pengalaman yang lebih khusus bagi mereka yang tidak tahu cara membuat komponen dan plugin mereka sendiri. Lagi pula, mengapa menciptakan kembali kemudi?
Dalam pengalaman saya, WP bagus untuk orang yang bukan pengembang, atau yang cukup tahu. Joomla di sisi lain dibangun untuk pengembang, untuk orang-orang yang ingin membuat pengalaman front-end dan back-end yang sepenuhnya disesuaikan. Saya menghabiskan waktu berjam-jam bekerja di templat WP untuk memaksanya melakukan apa yang saya inginkan, yang membuat frustrasi ketika saya terbiasa membangun sesuatu dengan cara yang saya inginkan pertama kali dengan Joomla (kami tidak menggunakan templat - kami punya sendiri inti Joomla yang dilucuti ke dasar-dasar dan kami membangun dari bawah ke atas).
Jika Anda menarik FTP WP dan Joomla berdampingan, Anda dapat melihat betapa berbedanya mereka.
WP memiliki area plugin ini tempat Anda dapat mencari plugin, memilih dan menginstal. Saya yakin Anda juga dapat memperbarui dari tempat yang sama. Ketika Anda berada di area plugin, itu akan sering memberi tahu Anda bahwa pembaruan tersedia.
Joomla menggunakan Extension Manager tempat Anda dapat mengunggah plugin atau komponen yang diunduh - Saya pikir mungkin ada fungsionalitas pencarian, tapi jujur saya tidak pernah menggunakannya karena saya biasanya menggunakan JED untuk menemukan apa yang saya butuhkan. Area yang sama ini juga menawarkan Anda tombol pembaruan di mana Anda dapat melihat semua pembaruan yang tersedia untuk apa yang telah Anda instal. Sekali lagi, beberapa komponen akan memberi tahu Anda bahwa mereka memiliki pembaruan yang tersedia, tetapi tidak semuanya.
Perbedaan utama yang saya lihat adalah WP dibuat untuk pengguna - mereka memasang templat, mereka dapat memperbarui, mereka dapat menambahkan, Joomla dibuat untuk pengembang, kami melakukan instalasi, kami memperbarui, kami membangun / menambahkan fitur dan fungsi baru. Itu bukan untuk mengatakan itu tidak ramah pengguna, tetapi ada daerah yang saya pikir didorong keluar dari cara pengguna karena mereka dibangun untuk pengembang.
sumber
Ketika Anda berbicara tentang arsitektur, itu tidak masalah ketika Anda membangun portal atau situs web yang kompleks yaitu banyak entitas yang saling terhubung.
Sebagai pengembang C dan C ++ ketika saya mengadopsi joomla, saya menyukainya karena menggunakan set standar yang sama daripada fungsinya merusak namespace global.
sumber