Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
NovoselovDRUPAL_FINAL_DRAFT.docx
Скачиваний:
8
Добавлен:
01.04.2015
Размер:
396.56 Кб
Скачать

Обзор популярных cms с открытым исходным кодом

Одним из первых встал вопрос выбора CMS. Для этого я изучил большое количество сайтов, где обсуждают системы. Пользователи в основном характеризовали 3 самые конкурентноспособные системы и как оказалось, позднее именно они стали призерами OpenSource CMS Award 2009 [3].Главную награду получила CMS Drupal. На втором месте, «с небольшим отставанием», идет Wordpress. Это лучший результат Wordpress за всю историю премии. На третьем месте — Joomla. Эти результаты практически сохранились в течение года. В 2010 году на этом же конкурсе Joomla снова заняла третьей место. На этот раз призером на этот раз стал Wordpress, обогнав Drupal. Причем исход бесплатных CMS решил дополнительный независимый судья Марк Кинг, не являющийся членов жюри, но при равенстве голосовWordpressиDrupalего назначили судьей и он отдал свой голос в сторону Wordpress. Именно эти триCMSбыло решено изучить и сравнить.

Сравнение CMS. Все выбранныеCMSработают по принципуWisywyg. То есть создание какой-либо страницы или дизайна, становится видимым в момент создания. Это позволяет пользователям наблюдать за возможным результатом их работы. Все системы используют для хранений реляционную базу данных, в которых хранится вся информация, от настроек сайта до новостей и комментариев пользователей. Они являются свободным программным обеспечением, защищенным лицензиейGNU GPL.

Краткая характеристика каждой системы. Joomla является относительно простотой системой управления при неограниченных возможностях и гибкости при изготовлении сайтов.

Архитектура Drupal позволяет применять его для построения различных типов сайтов — от блогов и форумов, до информационных архивов или сайтов новостей. Функциональность обеспечивается подключаемыми модулями, обращающимися к общему API Drupal.

Сфера применения Wordpress — от блогов до достаточно сложных новостных ресурсов. На сегодняшний день Wordpress — самая популярная система для ведения блогов. Но создание сайта отличного от блогов потребует не малых усилий.

Все системы имеют большие возможности в любом направлении создания сайта, всё в руках самих разработчиков.

Производительность. Производительность немаловажный фактор популярности сайта. С этим борются разработчикиCMS, и с каждой новой версией стараются сделать работу сайту как можно выше. Но проблема актуальности остается, в связи с недоверием веб-разработчиков, для перехода на более новые версии. И, как правило, новые версии не содержат всех тех расширений, которые присутствовали в предыдущих версиях, их перенос займет время.

Ниже на рис.1 и рис.2 приведено тестирование производительности наиболее используемых CmsJoomla 1.5 и Drupal 6.1.

Рис.1. Характеристики быстродействия Joomla и Drupal

Рис.2. Сравнение быстродействия Joomla и Drupal

Как мы видим Drupal значительно быстрее Joomla во всех четырёх инсталляциях. Скорость загрузки Drupal улучшается на ~74%, при включенном кэше и без установленных модулей. Если же стоят дополнительные модули, то включение кэша улучшит быстродейсвие системы на ~86%. Кэш поможет улучшить быстродейсвие Joomla на ~23% и на ~20% (с дополнительными компонентами).

Далее представлены результаты тестирования производительности рассматриваемых cms на виртуальном веб-сервере. Тестирование проводилось на следующей конфигурации: x86 CPU 3.0Ghz, RAM: 512Mb, OS: Debian GNU/Linux , kernel 2.6.22-3-686

Для всех cms загружаемая страница содержала меню, форму ввода, текст общим размером 40Кб. Тестирование производилось пользователей. Тестирование проводилось для следующих версий: WordPress 2.6, Joomla 1.5.2, Drupal 6.2

Ниже на рис.3. приведены результаты тестирования для 10 пользователей. Результом является скорость загрузки страниц(millisecondsperpagerequest).

Рис.3. Результаты тестирования нагруженности сайта для 10 пользователей

Drupal использует наиболее эффективный алгоритм кэширования, поэтому эта cms показала лучшие результаты. По сравнению с предыдущими версиями Joomla 1.5 потребляет больше системных ресурсов хостинга: память, запросы к базе, большое количество небольших файлов на подключение к каждому уходит время и память, а в режиме Legacy (Наследственный) система потребляет еще больше ресурсов, чем без него.

В версии 2.6 WordPress разработчики убрали файловый кэш, таким образом, потребление памяти значительно возрасло. В WordPress'е загружаются все файлы не зависимо от того, будут ли ни использоваться или нет. То есть сервер вынужден обрабатывать много php-кода вхолостую, что неизбежно приводит к дополнительной нагрузке процессора

Популярность. Для рассмотрения популярности данных CMS обратимся к сайтам. Где если ни на сайтах смотреть движки сайтов. Обратимся к интересному инструменту тренд, то есть статистика поиска того или иного слова на сайтеhttp://www.google.ru/trends. Рассмотрим на рис.4 и рис.5 **ЧТО РАССМОТРИМ НА НИХ?**.

Рис.4. График популярности движков по миру

Рис.5. График популярности движков по России

Сравнив данные, можно сделать некоторые выводы.

Wordpress и Joomla развиваются практически одинаково. Возросший интерес к ним, по-видимому вызван огромным количеством сайтов, направленных на красоту внешнего вида, нежели на огромную функциональность и сложную структуру. А Drupal медленно, но верно развивается. Если рассмотреть именно Россию, то несомненным лидером является Joomla, а рассмотрев именно Drupal можно сделать вывод, что либо о нем в области никто, не знает, либо он стремительно догоняет wordpress.  Но эта статистика популярности двояка. С одной стороны, она отображает возросший интерес пользователей для изучения понравившегося движка, с другой стороны это может указывать на сложность понимания или тяжесть в расширяемости. То есть на решение задачи пользователь может потратить большее количество времени, ища по всем просторам Сети интернет ответ на интересующий вопрос, в результате чего статистика сильно изменится.

Русская документация. Для многих новичков на первых шагах усвоение и разработка сайтов на CMS  вызывает трудности и, как правило, некоторые не найдя ответа на интересующий вопрос, в скором времени, переходят на другойдвижок**, бросив дело на полпути.

Для Joomla!**на данный момент русскоязычной документации достаточно, можно сказать, много. Причем она не ограничивается переводом официальной помощи, а уже приходит к стадии написания авторских статей.

Несмотря на старания русского сообщества, занимающегося переводом документации, в ней присутствуют белые пятна. Особенно заметно, что вновь появившиеся модули не имеют документации и пользователю приходиться со словарем в руках разбираться и так в столь непонятном модуле. Для работы на Drupal рекомендуется знание английского языка.

Документации много, но, к сожалению, только на английском языке. Но составлена структированно и понятна, не обязательно хорошее знание языка, можно без больших усилий найти ответ на нужный вопрос. В каждой статье дается несколько примеров и ссылки на похожие вопросы.

Joomla из-за своей популярности имеет огромное количество русской документации.

Русское комьюнити/поддержка. У любого начинающего разработчика вызывает трудности работа с CMS. Для этого существует так называемая комьюнити поддержка, где уже опытные пользователи делятся своими советами и отвечают на вопросы новичков.

Если коротко, то существует две различных группы, ведущие свои форумы и сайты поддержки. Попытка объединения была, но так ничего и не получилось. В принципе для пользователей, наличие двух сборок и русификации на данный момент всех устраивает. Наличие конкуренции нисколько не вредит сообществам, а наоборот даже подталкивает команды работать все лучше и лучше.

Русское сообщество развивается, причем достаточно бурно, поскольку в последнее время о Drupal много говорят в Российских интернет-ресурсах. Есть люди, разбирающиеся в архитектуре. Что важно, они отвечают на форуме. В целом сообщество открытое и дружелюбное, охотно помогают новичкам, но злоупотреблять этим не стоит.

У русского Wordpress есть два официальных сайта. Поддержка пользователей осуществляется через форумы добровольцами. Так, что, скорее всего проблем с русской поддержкой не будет. Также существует много блогов, где их авторы выкладывают и делятся самыми разными находками и решениями по WordPress.

С поддержкой у всех все хорошо, наличие документации на официальных сайтах в хорошем состоянии.

Работа с содержанием. Одной из основных задач практически для любого динамического сайта является заполнение его информацией.

Если рассматривать Joomla, то она по умолчанию может добавлять тип содержания как новость, не зависимо, что в эту новость входит, информационный пост или характеристика какого-либо товара. Расширение функциональности поддается с трудом, требуются специальные модули и компоненты, которые будут добавлять конкретный тип содержимого.

Drupalв этом деле является лидером, он позволяет добавлять на сайт, например, изображения и новости как равносильные типы. Пользователь сам может задать любой тип материала, какой только пожелает, и для этого не потребуются какие-либо специальные модули. Создание сильно отличных типов материала требует некоторых усилий. Например, пользователь создает тип материала «фотография», и тип материала «альбом». Каждый из этих материалов, будет***равносильно добавляться, не вызовет затруднений настроить комментирование этих материалов. И при желании можно настроить их зависимость. То есть создается альбом, и при добавлении фотографии указыва**ем, в каком альбоме она будет отображаться.

Wordpressнемного отстает, так как изначально он создан для блогов и основные типы материалов будут новости, а именночьи ***то новости, как чья-то заметка или задумка. Добавление нового типа материалов осуществляет определенными модуля и плагинами.

Темы и шаблоны оформления. Темы представляют собой готовые структурированные файлы с функциями системы и языком разметкиhtml. На основе шаблонов строится структура каждой страницы на сайте.

В Joomla есть возможность назначения разным страницам различных шаблонов. Кроме того, в Интернете доступно огромное количество шаблонов для Joomla (даже целые сайты исключительно по шаблонам), можно тщательно подобрать шаблон интересующей вас тематики и при желании изменить. По сравнению с шаблонами других систем управления сайтом шаблоны Joomla очень просты по своей структуре, что упрощает процесс их создания и редактирования. Существует 2 вида шаблонов Joomla: шаблоны сайта (SiteTemplate) и шаблоны административной панели (BackendTemplate). Также для Joomlaсуществуют шаблон-сайты в которых, помимо основной темы, добавлены и настроены модули необходимые для определенной задачи. Примером может служить шаблон-сайт интернет-магазина.

В Drupalшаблонов хорошо спроектирован, поэтому разобраться с интеграцией своих шаблонов сможет начинающий PHP-программист. В Drupal имеются большие возможности по управлению темами. Также у каждого пользователя сайта присутствует возможность выбирать себе понравившийся шаблон, не трогая настроек самого сайта. Привлекательных общедоступных шаблонов мало, очень много шаблонов делается под конкретного заказчика. Имеется возможность выбора темы оформления пользователям из списка доступных, не затрагивая при этом основной темы оформления.

Для Wordpress созданы тысячи шаблонов и многие из них выполнены на очень хорошем дизайнерском уровне. Устройство Wordpress таково, что под него несложно переделать, скажем, html-шаблон. В шаблонах используются обычные PHP-функции, поэтому никаких сложностей с изучением т.н. языков шаблонов нет. По созданию шаблонов существует довольно много статей, даже естьonline-генератор. Готовые шаблоны достаточно загрузить в отдельный каталог и после этого в админ-панели выбрать понравившийся. Существует также возможность переключать шаблоны и посетителями.

Расширение функциональность (плагины и модули). Это является ключевым фактором в сравненииCMS. Именно удобность расширения позволяет разрабатывать модули, решающие определенные задачи. В результате огромной популярности Joomla имеет множество расширений (на официальном сайте уже более 4 тыс.), увеличивается рост платных расширений. Однако это большое число не совсем является признаком успешности, так как многие изпохожи друг на друга по функциональности, одни заменяют другие, в результате чего бессмысленно перегружают сервер. Также для многих новичков не понятно наличие разных видов расширений: модули, плагины, компоненты. Которые на первый взгляд делают одни и те же операции, их различия лишь в их масштабах. Компоненты наиболее крупные и являются, чуть ли не полноценным CMS.

***DRUPAL????В данное время, в официальном репозитории хранится около тысячу бесплатных модулей. Среди прочих есть решение для электронной коммерции, CRM-система, wiki-движок. Стоит отметить модуль CCK (ContentConstructionKit), который позволяет при помощи графического интерфейса описывать объекты предметной области в базе данных и сразу же создавать формы для управления ими. Также тесное сотрудничество сообщества обеспечивает разные по функциональности модули и постоянное улучшение, и дополнение модулей.

Wordpress можно расширить за счет плагинов — это различные php-скрипты, которые автоматически подключаются к основному «ядру». Таким образом, можно не просто добавить нужную функциональность, но и изменить уже существующую. Подключение плагина к Wordpress осуществляется копированием в специальный каталог и активацией в административной панели. Некоторые плагины можно настраивать, некоторые нужно прописывать в шаблоне, а некоторые работают полностью автоматически. Плагинов для Wordpress написано несколько тысяч, поэтому можно найти плагин практически под любые нужды. Однако некоторые плагины требуют значительной переделки шаблона.

Работа с библиотеками JavaScript(JS). Также при расширении системы немаловажным являютсяJS-скрипты. С помощью него можно создавать интерактивные веб-страницы наиболее удобным и эффективным способом. А библиотекиJSпозволяют разрабатывать и использовать готовые решения, нежели писать скрипты с нуля. В современном мире мало, что пишется абсолютно с нуля. Это требует больших затрат времени и сил.

Joomla большей частью использует библиотеку Mootools, но в последнее время эта библиотека слабо развивается. Менее конкурентоспособна. А при попытках подключить другую библиотеку возникают камни преткновения*** даже у тех, кто с этимдвижком***давно успешно работает.

Drupal, вследствие своей гибкости, позволяет подключать практически любую библиотеку. Он зачастую использует JQuery– лидера библиотек на текущий период времени. Помимо того, что Drupal позволяет использовать jquery, в последних её версиях функции вызываются напрямую без подключения библиотеки. То естьjqueryстала встроена в Drupal.

Wordpress, зачастую, использует именно jquer **КАК ПИШЕТСЯ ТО ТОЧНО?***yв связи с её популярностью, удобностью и красотой. Ведь уклон вордпресс направлен, как правило, на красоту дизайна. Даже часто бывает, что делается какой-либо плагин дляWordpressи всеми доступным средствами его импортируют в другие CMS.

Выводы. Сравнивались все 3 наиболее популярных CMS. Изучены возможности начальной установки и настройки, расширения функционала и добавления готовых тем оформления. Подведем итоги.

Joomla. Как правило, работа с любой CMS начинается при скачивании и установке. Установка, также, не вызвала затруднений. Русская версия с подсказками, и почти все настроено по умолчанию,стоит *** лишьввести название сайта и базу данных. При установке также уточняется установить ли демонстрационные данные. Это позволяет начинающим пользователям увидеть уже готовый работающий сайт со своей структурой новостей и категорий. Такжея***без усилий нашел подходящие темы оформления, которые одна удобнее и привлекательнее другой, трудность составляет лишь выбор подходящей. Так же немаловажным было то, что при разработке сайтаJoomlaявляется разделенной в части администрирования. То есть администраторская панель отличается от того, что видно обычным пользователям на сайте. Это позволяет четко отделить пользователей и администрацию, но, как оказалось, это имеет свои недостатки. Например, при крупных изменениях на сайте, администратор не сразу может заметить изменений, так как при каждом изменении требуется заходить по другой ссылке на сайт и проверять изменения.

С установкой и настройкой разобрался, дальше предстояло расширение функционала, и тут возникли затруднения, я до сих пор не сильно разобрался***в существенных различиях между компонентами, модулями и плагинами. Все они расширяют возможности сайт, практически одинаковая настройка и похожие функции. А написание собственных вызывает крайнее затруднения.

Немного поработав с Joomla, я пришел к выводу что, она по своей функциональности и внешнему виду подходит для незначительных проектов. Под этим я подразумеваю слаборазвитую структурированность (категоризацию), где основной уклон делается не на сложную структуру и разделение на категории или права доступа, а на добавление материала. Даже обычная домохозяйка, не владеющая представлениями о программировании, может запросто ваять сложнейший динамический сайт, разработка которого еще три-четыре года назад обошлась бы в несколько десятков тысяч долларов. Учитывая тысячи шаблонов, в последнее время сильно развиваются сайты исключительно по шаблонам, по разной тематике можно создать сайт красивым дизайном за считанные минуты, не разбираясь в программировании html. Это в большую очередь подойдет для развлекательных и информационных порталов.

Примеры сайтов сделанных на Joomla:

Gazzetta.gr - это сайт спортивных новостей, и в данное время является одним из лучших веб-сайтов в Греции.

Theartsdesk.com - это сайт, который объединил руководящих британских журналистов, которые описывают культурную жизнь не только Британии, но всего мира. Это один из самых больших британских художественных сайтов.

Linux.com - создан некоммерческой организацией LinuxFoundation

Drupal. Всё началось с установки, которая сразу же вызвала затруднения, так как в отличие отJoomla, официальный сайт предоставляет английскую версию. Потребовалось скопировать файл настроек по умолчанию и сделать его настройками сайта. Также потребовалась русификация сайта. Для этого нужно было включить специальный модуль, добавить русский язык, как язык для сайта, загрузить русификацию и задать язык сайта. А в остальном всё, как и в других системах, указываем имя сайта, базу данных и сайт готов к работе. Такие сложности с установкой создали первое впечатлениеDrupal, как непонятной и довольно таки странной CMS. Я долго не мог привыкнуть ктакого рода системе.

В отличие от JoomlaвDrupalподдерживается совместное администрирование и использование. То есть администраторское меню находиться, где и обычная навигация по сайту, только для пользователей появляются дополнительные пункты в меню. Добавив права пользователям (роли) “администратор” и выдав ему все возможные полномочия, создал пользователя, которому дал спектр таких прав. И при добавлении какого-либо нового модуля было непривычно заходить и давать заново роли “администратор” права на использование нового модуля. Более подробно рассмотрим позже в детальном описанииDrupal.

Рассмотрев все плюсы и минусы, в сравнении с другими CMS я выбрал именно его. Так как он имеет большую функциональность и расширяемость и он более близок к программистам. Так как Wordpress и Joomla ограничиваются в модулях и написание своих собственных вызывает огромные затруднения. А Drupal с открытым кодом написан более понятно, и при написании модулей, не требуется делать все с нуля, а дополняется. Сообщество пользователей Drupal тесно сотрудничает и постоянно уже готовые модули улучшаются и дополняются. То есть, практически нет модулей выполняющих одно и то же действие. На мой взгляд, это самая подходящая CMS для программистов, где любой желающий, имея базовые представления основ программирования, сможет решать поставленные перед ним задачи любыми удобными ему стандартными или неординарными способами. Это отличный инструмент при разработке сайта, предоставляющий программисту всё необходимо длясайт любой тематики, а реализация лишь в руках самого разработчика.

Примеры сайтов сделанных на Drupal:

whitehouse.gov-Официальный сайт Белого Дома

greenpeace.org.uk-Гринпис

pdx.edu-Университет Портленда

Wordpress. УстановкаWordpressна момент когда я только выбиралCMS, вызвала затруднения, так как пришлось открывать конфигурационные файлы блокнотом и редактировать нужные строки собственноручно, также были проблемы с кодировкой. Но вот сайт заработал, и я был приятно удивлен. Первое впечатление, как и мнение в последующем осталось как самой красивой CMS. Даже стандартная тема оформления после небольших настроек создает сайт с превосходным дизайном. Да и новые модули и темы оформления добавлялись довольно таки просто и работа с ними не вызывала сильных трудностей. Но, не смотря на это, я не до конца разобрался, как сделать изWordpressсайт отличный от блогов, реализация такого занимает огромного количества времени и сил.

Wordpress победителем конкурса OpenSource CMS Award 2007 в номинации «Лучшая система управления содержанием для социальных сетей». И это не удивительно, ведь Wordpressвсе гармонично и красиво создано для реализации сайта блогов. Если учитывать то, что для Wordpress уже существует огромного количество шаблонов, многие из которых является произведениями искусства, то созданный сайт будет радовать глаз пользователей при минимальных изменениях в шаблоне. Однако огромным минусом является ограниченность, так какWordpressсоздан именно для блогов и при попытке сделать из него сайт другой тематике почти невозможно. Реализация этого займет огромного количества времени и сил.

Примеры сайтов сделанных на Wordpress:

www.spotify.com-сайт посвященный музыке

www.samsungusanews.com-сайт компании samsung

wordpress.com – официальный сайт Wordpress, занимающий 11 место в списке самых популярных сайтов мира.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]