Joomla! vs Drupal

Сравнительный анализ движков Joomla! и Drupal. Статья не претендует на полноту описания. Замечания и дополнения приветствуются!

В последнее время наблюдается все больший и больший рост популярности таких CMS как Joomla и Drupal , связанный не столько с их повсеместным использованием, сколько с положительными отзывами веб-разработчиков. Но если Вы начинающий разработчик и еще не определились с выбором движка, то Вам скорее всего хотелось бы знать заранее, в какую именно сторону начинать шаги. Для этого в данной статье я постараюсь привести наиболее объективное сравнение двух движков Joomla и Drupal на основе наиболее значимых функций, требуемых при разработке и сопровождении сайта. Хочу сразу отметить, что при выборе движка все таки основным критерием будет вкус разработчика, нежели анализ функционала, так как на данный момент, в силу их широкого распространения, обе CMS по функционалу практически не отличаются друг от друга. Итак, приступим к сравнению:

Joomla! Drupal
Версии
Разработчики Joomla в новых обновлениях стараются максимально приблизить движок к основным запросам пользователей в плане безопасности (т. е. Устранению уязвимостей), а также добавить свои нововведения, которые позволяют расширить функционал движка. Последняя версия на данный момент — Joomla 3.3.6. Разработчики Drupal с тем же успехом закрыли в последней версии своего движка все основные на данный момент уязвимости. Последняя версия на данный момент  - Drupal 7.34. К выходу готовится новая версия Drupal 8, подробнее можно узнать на официальном сайте поддержки или в новостях КОМТЕТ .
На данный момент видимой и серьезной разницы между работой разработчиков данных движков не наблюдается — и в том и в другом случае проводится серьезная работа по улучшению функционала, защищенности и дружелюбности для разработчика.
Особенности начального дистрибутива
Joomla является разносторонней CMS, рассчитанный первоначально на создание информационных интернет-порталов.  Дистрибутив «по умолчанию» включает в себя лишь наличие основных функций для создания ресурса, которые можно значительно расширить с помощью сторонних компонентов.

Drupal первоначально все таки представляет из себя больше комьюнити ресурс (комментируемый блог, форум), нежели CMS.  В отличие от Joomla дистрибутив «по умолчанию» включает в себя наличие таких возможностей, как создание форума или модуль по управлению комментариями на сайте. Функционал также значительно расширяется с помощью сторонних модулей
По данному критерию нельзя четко выделить какой-то движок. Единственный нюанс заключается в том, что в дистрибутиве «по умолчанию» Drupal все таки занимает позицию выше чем Joomla в том плане, что первоначально в него включен набор функций, позволяющих создать комьюнити ресурс, когда в Joomla для этого нужно прибегать к установке сторонних компонентов.
Структура движка
Joomla представляет собой блочно-модульный конструктор, то есть сайт является совокупностью блоков, содержащих тот или иной контент. Основная структура: сайт состоит из компонентов (заготовка из модулей и плагинов), модулей (части общей конструкции сайта) и плагинов (минимальный элемент, содержащий ту или иную функцию). Drupal также представляет собой блочно-модульный конструктор. Основная структура: модули, в которых заключены как отдельные функции, так и их набор.
В этом вопросе я считаю что Joomla занимает лидирующую позицию, так как система расширений подразделяется на три составляющих, имеющих иерархию, а поэтому и более тонкую установку и настройку расширений. Более того, в Joomla еще есть специальная система их установки, позволяющая при помощи xml-файла описывать все действия необходимые для совершения при создании записи о расширении (например, SQL-запросы, копируемые файлы или действия выполняемые сразу после установки, которые нельзя выполнить автоматически).
Коммерческие особенности расширений
Расширения в Joomla являются как бесплатными, так и коммерческими. На данный момент все чаще и чаще наблюдается разработка серьезных расширений на платной основе. На данный момент основная масса расширений все таки является бесплатной.
По поводу большего количества коммерческих расширений для Joomla , нежели чем для Drupal, можно отметить как положительные стороны, так и отрицательные. Отрицательные стороны, учитывая интересы разработчика, очевидны — покупать дополнительные расширения для бесплатного движка никому не хочется, но эту же особенность можно считать и сильной стороной Joomla, так как коммерческая основа распространения некоторых компонентов положительно сказывается на их качестве.
Шаблоны оформления
Каждый шаблон оформления представляет собой набор определенных модулей, плагинов, расположения блоков сайта, файлов стилей, а иногда и нескольких компонентов.
В данном случае шаблон представляет собой набор стилевых файлов.
Хочется сразу отметить минусы структуры шаблонов в Joomla — если в Drupal при смене шаблона меняются только стилевые файлы, то в Joomla некоторые шаблоны порой меняют в дополнение не только общее расположение блоков сайта, но и приоритеты этих блоков (например основное меню сайта может измениться с вертикального на горизонтальное). Конечно при создании и  первоначальном выборе оформления сайта данный нюанс не существенен, так как контента все равно еще нет. Но если сайт уже разработан, все меню привязаны по приоритетам, то изменение текущего шаблона на какой либо некорректный может закончится  потраченным временем на исправление таких неприятностей, как например пропажа некоторых меню сайта. И все же проблема решаема — желательно использовать шаблоны проверенных разработчиков, что в том числе относится и к Drupal.
Уязвимости
Уязвимости присутствуют в ранних версиях линейки 1.5.х Уязвимости присутствуют в ранних версиях линейки.
По поводу уязвимости Joomla и Drupal, можно лишь посоветовать разработчику использовать последние версии используемой линейки движка, в принципе что и советуют разработчики данных движков.
Визуальный редактор
В основном это портированные и самые распространенные редакторы. Но все же самым удобным и функциональным из бесплатных является редактор JCE, разработанный специально для Joomla, составляющий очень хорошую альтернативу платному WysiwygPro. В Drupal можно встроить TinyMCE или FCKEditor. И тот и другой гибко настраиваются. Оба являются мощными средствами.
Конечно же выбор редактора — дело вкуса, но на мой взгляд Joomla все-таки занимает здесь лидирующую позицию из за более широкого выбора визуального редактора.
Работа с картинками
В базовом пакете включен функционал для работы с изображениями, причем настолько широкий, что в принципе не принуждает к установке сторонних расширений. В базовом пакете вставка картинок не предусмотрена. Решается либо прикреплением картинки к посту блога, либо установкой WYSIWYG-редактора TinyMCE и медиа-менеджера IMCE.
Здесь Joomla снова занимает лидирующую позицию из за включения в функционала для работы с изображениями в базовый пакет.
Производительность
Первоначально, более тяжелый чем Drupal по производительности базовый пакет, в наращивании расширений не столь заметно прибавляет нагрузку на веб-сервер. Рекомендуемый тарифный план «Плюс» Менее загруженный базовый пакет при наращивании в последующем дополнительными расширениями запрашивает несколько больше ресурсов веб-сервера. Рекомендуемый тарифный план «Плюс»
По минимальной нагрузке на веб-сервер Joomla конечно же лидирует. Но этот аспект настолько субъективный (так как загруженность будет зависеть непосредственно от количества и качества установленных расширений), что точно можно лишь судить о базовых пакетах этих CMS.


Итак, в процессе анализа функциональности двух очень популярных движков в среде веб-разработчиков можно выделить следующие моменты:

Joomla — очень функциональный движок благодаря трехуровневой системе расширений (компонент-модуль-плагин), которых имеется огромное количество (на данный момент несколько тысяч). Также стоит отметить наличие сильного текстового и графического редактора в базовой сборке. Движок в основном предназначен для создания информационных интернет-порталов, но за счет расширений может быть многоплановым.

Drupal — не менее функциональный движок, одним из основных плюсов которого является простота и удобство верстки с помощью админпанели. В плане оформления с помощью дополнительных шаблонов занимает лидирующее место. Базовый пакет включает в себя все необходимые инструменты для создания комьюнити ресурса. Установка расширений имеет меньше ошибок, так как сам процесс установки наполовину выполняется вручную. Движок в основном предназначен для создания ЖЖ и блог-ресурса, но за счет расширений может быть многоплановым.

Итог подведен и выбор соответственно за веб-разработчиком. Основное различие движков Joomla! и Drupal лишь в том, что Joomla! рассчитана на создание обычного сайта, когда Drupal все таки является сильным блоговом движком. Важно помнить, что создать сайт определенного типа (блог, портал и т.д.) можно на любом движке, поэтому хочу посоветовать следующее — в первую очередь руководствуйтесь в выборе движка для разработки сайта удобством интерфейса и админпанели, так как именно за этими инструментами Вы проведете большую часть времени. Да и к тому же на сегодняшний день различия между Drupal и Joomla больше сводятся к делу вкуса. Удачи в начинаниях!

Вам также может помочь