Drupal Consultant
Started my career as a drupal8 developer in EM Solutions . I love learning Web technologies like HTML, CSS, PHP, Jquery Ajax and Drupal backend . Currently working as a drupal backend developer.
Trong số các hệ quản trị nội dung (CMS) phổ biến hiện nay, nổi bật lên hai ứng viên sáng giá nhất là Joomla! và Drupal. Hai hệ quản trị nội dung này thay nhau làm mưa làm gió trong các cuộc thi. Đặc biệt ở cuộc bình chọn uy tín nhất của Packt Publishing, Joomla! và Drupal luôn chiếm giữ hai vị trí đầu bảng.
Trước tiên, hãy cùng tìm hiểu sơ qua hai CMS này. Tiền thân của Joomla! là Mambo, một sản phẩm của Miro. Năm 2002, song song với bản thương mại hóa, Miro cho phát hành Mambo Open Source (gọi tắt là MOS, chữ thường thấy trong mã nguồn Mambo và cả Joomla! cho đến tận năm 2008 này). Đến năm 2005, Mambo bước vào giai đoạn chín mùi và giành nhiều giải thưởng lớn như là “Giải pháp nguồn mở tốt nhất” và “Giải pháp hoàn hảo cho công nghiệp” tại LinuxWorld. Tuy nhiên, đến cuối tháng 8/2005, do bất đồng với Miro, tất cả thành viên trong nhóm phát triển Mambo đồng loạt rời công ty, lập ra nhóm “Open Source Matters”. Họ xây dựng thương hiệu mới “Joomla!” dựa trên Mambo và phát hành lại vào gần một tháng sau. Joomla! 1.0 ra đời trong hoàn cảnh đó.
Từ đó đến nay, Joomla! liên tục được cải tiến, đặc biệt là vá các lỗi bảo mật. Bản Joomla! mới nhất là 1.0.13 ra đời tháng 7/2007, ngoài ra thế hệ kế tiếp là Joomla! 1.5 được bắt đầu phát triển từ cuối năm 2006, đến nay đang ở giai đoạn RC4.
Joomla! thực sự dễ dùng. Giao diện quản trị (back end) bắt mắt, việc cài đặt các phần mở rộng chỉ đơn giản là tải lên và chạy chương trình cài đặt. Theo triết lí của Joomla!, đơn vị dữ liệu cơ bản là content item (ở bản 1.5 đổi thành article) chứa trong category, bản thân category được chứa trong section. Như vậy dữ liệu trong Joomla! tổ chức thành 3 cấp.
Cách tổ chức này rất logic và không gây rắc rối cho người dùng mới. Dù vậy, Joomla! không có nền tảng để hỗ trợ các kiểu dữ liệu phức tạp hơn. Một nhược điểm khác là Joomla! được thiết kế dành cho người dùng cuối, nên không cung cấp nhiều phương tiện can thiệp vào hoạt động bên trong.
Nhóm phát triển Joomla! luôn quan niệm “open source does matter”, họ từng lên án các phần mở rộng (extension) viết cho Joomla! mà không cung cấp theo giấy phép GPL, cho dù đó là sản phẩm thương mại hay nguồn mở. Trong các sản phẩm bị chỉ trích có cả SMF, một diễn đàn được dùng khá phổ biến kèm với Joomla! (và kết quả là bridge cho Joomla! bị xóa bỏ khỏi trang download của SMF). Hiện nay, vấn đề này được giải quyết với các sản phẩm viết từ đầu bằng cách cung cấp song song theo GPL và giấy phép khác (như MIT chẳng hạn).
Joomla! hiện đang rất phổ biến ở Việt Nam bởi tính dễ dùng của nó. Ngoài ra, Joomla! đáp ứng được yêu cầu quan trọng nhất để xây dựng nhanh một website: có rất nhiều template (giao diện) có sẵn, cả miễn phí lẫn thương mại, nhiều template có chất lượng rất tốt.
Drupal xuất phát từ một diễn đàn viết bởi Dries Buytaert (hiện đang là Nghiên cứu sinh tại Bỉ), được chuyển thành sản phẩm nguồn mở năm 2001. Cho đến nay, Buytaert vẫn lãnh đạo việc phát triển của dự án.
Hạt nhân của Drupal là node với cấu trúc đơn giản. Để phát triển các kiểu nội dung phức tạp, mỗi node sẽ được liên kết với một nội dung có kiểu khác nhau. Node được quản lí nhờ hệ thống taxonomy cực mạnh, đây cũng là đặc trưng của Drupal. Người dùng Gmail, Flickr, WordPress, Yahoo! 360°… ắt hẳn quen với khái niệm “tag” (đôi khi gọi là label), và khái niệm rất hiện đại này đã có trong Drupal ! Khái niệm tag được gọi là “term” trong Drupal, được tổ chức có cấu trúc (chia nhiều cấp). Ngoài ra, trong taxonomy còn có khái niệm “vocabulary” cho phép chia term thành các lớp không giao nhau. Thí dụ một node được gắn một term thuộc vocabulary “Tháng” (gồm 12 term) và các term thuộc vocabulary “Chủ đề”.
Drupal được xây dựng để giúp đỡ cho nhà phát triển. Hệ thống hook đa dạng giúp người lập trình can thiệp vào mọi hoạt động mà không phải sửa bất kì dòng lệnh nào của nhân hay các phần khác – điều này trái ngược với Joomla!. Ngoài ra, công nghệ của Drupal thường mới hơn Joomla!, thí dụ như thiết kế của Drupal không dùng bảng (table) trong khi ở Joomla! thì bảng xuất hiện ở mọi nơi (những viên gạch đầu tiên của Joomla! được xây dựng khi các chuẩn Web chưa ra đời). Triết lí “không tương thích ngược” của Drupal làm cho module phải được viết riêng cho từng phiên bản 4.x, 5.x và 6.x (tại cùng một thời điểm, Drupal chỉ hỗ trợ 2 phiên bản mới nhất). Điều này cũng có mặt trái: nhiều người e ngại phải nâng cấp liên tục khi dùng Drupal.
Ở Việt Nam hiện nay Drupal ít được phổ biến vì nó tương đối khó sử dụng. Cộng đồng Drupal Việt Nam chỉ mới manh nha những bước đi đầu tiên sau khi Drupal vượt qua Joomla! trong cuộc thi CMS nguồn mở tốt nhất do Packt tổ chức
Bình luận (0)
Add Comment