Artikel ini bukan menyentuh perbandingan tetapi mahu memperkenal Drupal kepada umum. Secara keseluruhannya, saya akan menjelaskan secara mendalam kekuatan dan kelemahan, kelebihan dan kekurangan Drupal agar boleh dijadikan panduan kepada pengguna baru mengenalinya dengan jelas.

Segala isi penulisan ini adalah hasil dari pengalaman, pembacaan, kajian dan penggunaan Drupal selama ini. Pihak kami, Kripkorn Studios Team memilih Drupal kerana kelebihannya yang memenuhi ciri dan keperluan yang tersenarai.

Empulur Drupal (Drupal core)

Drupal dibina berasaskan kepada "framework" dan lebih dikenali sebagai Content Management Framework. Dari kerangka ini kod aturcara dikumpulkan dan dipakejkan dalam bentuk "function class". Dalam terma Drupal ianya dikenali dengan "hook".

Himpunan "hook" ini seterusnya dikategorikan mengikut fungsi seperti kandungan, pengurusan pangkalan data, templat dan kawalan paparan untuk diterbitkan sebagai "Application Programming Interface (API)". API ini merupakan medium yang mengawal setiap pemprosesan Drupal.

Setiap data yang disimpan dan diproses akan dirangkum sebagai "node". "Node" merupakan serpihan data-data yang terkumpul dan dikawal oleh API sebelum ianya dicantum untuk dipaparkan menjadi satu laman.

Drupal menerapkan konsep MVC (Model-View-Controller) dalam pembinaan laman. Secara asasnya, model adalah "nodes", controller merupakan API dan view merupakan hasil akhir paparan.

Drupal menyokong pelbagai jenis platform yang mana ianya boleh dijalankan bukan sahaja pada pelantar Apache tetapi IIS, Linux, BSD, Solaris, Windows dan Mac OS. Drupal boleh disambungkan kepada pangkalan data jenis MySQL, SQL dan PostgreSQL.

Bagi membolehkan Drupal dijalankan pada multi-platform dan multi pangkalan data, satu "schema" atau skema perantaraan dibina yang menjadi medium untuk menghubungkannya kepada situasi dan keadaan yang berbeza.

Dengan kelebihan penerapan MVC dan skema perantaraan, terbina dalam Drupal satu kod pra-pemprosesan atau "preprosessor". Kod pra-pemprosesan ini memberi peluang kepada pengguna melakukan sebarang suntingan, pengubahsuaian atau penambahan sebelum ianya dipapar kepada pelawat.

Dengan ciri-ciri dan kelebihan seperti di atas menjadikannya Drupal satu sistem pengurusan kandungan yang terlalu fleksibel. Namun kelebihan ini serba sedikit "membunuh" Drupal.

Sifat fleksibel Drupal

Satu sistem pengurusan kandungan dibina bukan sahaja membolehkan anda menggunakannya dengan mudah dan cepat tetapi ianya perlu mengambil kira soal keselamatan (security), kestabilan (stability) dan keserasian (compatibility). Begitu juga Drupal yang mana sifat fleksibelnya sukar untuk mengimbangi ke semua elemen ini.

Satu perisian yang dibangunkan akan melibatkan dua golongan iaitu pihak pembangun (developer) dan pihak pengguna (user). Pihak pembangun Drupal akan lebih fokus kepada elemen:

  • pengaturcaraan agar ianya selamat
  • stabil digunakan dalam sebarang situasi dan
  • serasi dengan modul tambahan pihak ketiga.

Pihak pengguna melihat Drupal dari segi:

  • kefungsian iaitu fungsi-fungsi dan pembolehubah yang lebih spesifik
  • kebolehgunaan yang melibatkan mesra pengguna iaitu mudah dan senang dipelajari dan digunakan

Kedua-dua pihak memandang Drupal dari sudut yang berbeza. Antara sebab Drupal diterima ramai adalah kerana sifat fleksibel yang menyelesaikan pertentangan ini walaupun ianya menuntut sedikit masa untuk memahami dan menggunakan Drupal.

Pakej asas pemasangan Drupal

Drupal didatangkan dengan pemasangan yang paling asas iaitu penggunaan grafik yang minimal, pakej yang bersaiz kecil (sekitar 1-2 MB) sahaja dan penerapan modul lalai (default module) yang tertentu sahaja. Apakah kelebihan mempunyai jumlah saiz pemasangan fail yang kecil? Saiz fail yang kecil bermakna

  • lebih sedikit kod PHP yang dijalankan
  • lebih rendah peratusan mempunyai ralat dan ditembusi
  • lebih ringan dan pantas untuk dijalankan -- bilangan kueri dijalankan lebih rendah

Pakej asas ini tidak didatangkan dengan modul-modul penting yang dikomen ramai seperti pengurusan fail-fail (fail management), pengurusan gambar (image management), WYSIWYG dan lain-lain lagi yang berkaitan. Antara sebab adalah Drupal memberikan pengguna untuk mencorakkan sendiri laman.

Secara logiknya, seandainya Drupal didatangkan dengan puluhan modul dalam empulurnya, ianya bukan sahaja mengurangkan tahap prestasi malah membazirkan ruang yang boleh ditempatkan elemen atau perkara lain.

Ramai yang tidak mengetahui bahawa empulur (core) dan modul sokongan Drupal adalah yang sama di mana modul sokongan yang menjalani proses kematangan dari segi pembinaannya akan dimasukkan terus dalam pakej pemasangan Drupal.

Modul Sokongan

Satu-satu CMS tidak akan lengkap tanpa modul sokongan, begitu juga Drupal. Sungguhpun sistem itu sendiri lebih penting, tetapi tanpa kehadiran modul sokongan agak sukar untuk membina laman yang lebih kompleks dan lengkap.

Drupal yang didatangkan dengan API dan skema yang tersusun, penulisan kod aturcara yang begitu hebat membolehkan pelbagai jenis modul sokongan dibina dengan lebih teratur, serasi dan selamat. Modul Drupal teramat istimewa.

Setiap modul diklasifikasi sebagai modul berdiri sendiri dan bersandar. Modul berdiri sendiri (standalone) boleh dijalankan atau diaktifkan secara bersendirian. Manakala modul bersandar (dependance) memerlukan sokongan modul-modul lain tertentu sebelum dapat diaktifkan.

Modul ini dibina dengan skema dan format penulisan kod aturcara yang sama digunakan pada Drupal. Dengan erti kata lain, pemasangan modul adalah menambah kelas API dan skema kepada Drupal bagi menghasilkan, menambah dan memberikan fungsi baru kepada fungsi yang sedia ada.

Antara lain kehebatan modul ini sendiri adalah ia boleh berinteraksi dan memberi servis tambahan kepada modul-modul yang lain. Contohnya, modul Image Gallery secara sendirinya tidak mempunyai fungsi undi dan sekiranya modul Fivestar dipasang, ianya secara automatis akan berinteraksi, disambungkan kedua-duanya bagi membolehkan gambar-gambar di Image Gallery dinilai melalui fungsi undian Fivestar.

Isu keselamatan

Drupal dibina sebegitu rupa bagi memastikan ianya adalah paling selamat untuk digunakan. Satu badan yang dinamakan "Drupal Security Team" bertanggungjawab dalam mengemas kini setiap faktor yang berpotensi untuk mengganggu sistem perjalanan Drupal.

Kesan dari aktiviti tersebut, Drupal dalam setiap bulan secara puratanya mengeluarkan satu kemaskini berhubung soal keselamatan. Situasi ini menimbulkan kritikan dan persoalan dari banyak pihak dan pengguna.

Ramai yang berpendapat Drupal adalah satu sistem yang tidak stabil, sentiasa memerlukan proses kemas kini berhubung isu keselamatan walaupun versi terkini sudah mencecah ke versi 7. Tanggapan dan kritikan ini mungkin tidak disertakan dengan maklumat dan fakta yang lengkap.

Drupal mengawal, mengendalikan dan menerapkan setiap modul tambahan (third party module) terus ke dalam siste empulur (Drupal core). Oleh itu, walaupun ianya adalah modus operanti tambahan, seolah-olah modul tersebut disebatikan dengan sistem Drupal.

Bagi memastikan setiap modul tambahan ini serasi, selamat dan serasi dengan mekanisme utama Drupal, setiap tampalan keselamatan dikemaskini bukan sahaja untuk empulur Drupal tetapi melibatkan modul tambahan ketiga.

Sekiranya dilihat dari sudut yang berbeza, satu sistem yang sentiasa dikemas kini adalah lebih terjamin kerana ianya sentiasa dipantau berbanding sistem yang hanya mengeluarkan kemas kini untuk satu tempoh jangka masa yang lama. Dunia teknologi internet bukan seperti dunia sebenarnya, segalanya tersangat pantas. Setiap masa, penggondam mempunyai cara terbaru untuk memecah masuk sistem walaupun sistem tersebut sudah ditahap paling selamat.

Prestasi Drupal

Kritikan terhadap Drupal berkenaan penggunaan modul mengurangkan potensinya adalah benar. Drupal pada pemasangan asas mempunyai tahap prestasi yang paling cemerlang. Pemasangan modul tambahan akan menyebabkan peningkatan kepada pemprosesan seterusnya akan memberi kesan kepada prestasinya.

Namun sebenarnya krtitikan ini tidak berasas. Drupal adalah satu kerangka yang mana anda yang akan membentuknya. Setiap jenis laman yang dibina tidak memerlukan hampir ke semua modul yang disediakan.

Sebagai contohnya, untuk membina laman jenis blog, keperluan modul yang terbaik adalah Views, Image, Pathauto, Global redirect dan WYSIWYG. Saya tidak nampak anda memerlukan hampir 40 modul untuk membina laman berasaskan blog.

Untuk laman yang bercirikan hubungan sosial (social networking), antara cadangan modul yang penting adalah Organic Group, Views, Panels, Image, Pathauto, WYSIWYG dan Pathauto. Dan dengan modul-modul ini anda boleh kembangkan kepada bahagian blog untuk digunakan oleh pengguna dalam setiap kumpulan.

Selain itu, Drupal dibina berpandukan kepada piawai W3C yang membolehkan struktur dan penulisan aturcaranya dibaca dan diterjemahkan secara sempurna oleh pelbagai jenis pelayar. Menetapi piawai W3C bukan sahaja menjadikan setiap paparan pada setiap pelayar berlainan adalah sama tetapi serba sedikit ianya mengurangkan masa untuk laman dibaca dan diterjemahkan tanpa sebarang ralat.

Penilaian: 
5
Your rating: None Average: 5 (2 votes)

Komen

bizaire's picture

Artikel yg bagus tentang drupal .. thumbs up!

untuk tambahan maklumat (tutorial video) sila ke :

http://bizaire.com/2011/03/15/expert-content-management-drupal/

parasolx's picture
Admin

Dalam komen tersebut tidak menyatakan tambahan fakta yang perlu dibuat. Pautan ke laman tersebut hanya mengandungi info mengenai penjualan tutorial mengenai Drupal yang tidak akan ditambaah dalam artikel ini.

------

Hadafi Solution & Resources: http://parasolx.net
Professional in Drupal web development, theme designing, consultation and training