Мой год c Sitecore CMS
Более года я не писал в блог не одного поста. В основном из-за отсутствия времени или желания, или просто от банальной лени.
В этом посте я хочу написать о Sitecore CMS. Это та система с которой я работал более года, по которой получил сертификацию и по которой теперь думаю могу составить осмысленный обзор.
В этом посте я хочу написать о Sitecore CMS. Это та система с которой я работал более года, по которой получил сертификацию и по которой теперь думаю могу составить осмысленный обзор.
О Sitecore
Sitecore(www.sitecore.net) - датская компания с главным офисом в Копенгагене и центром разработке в Украине (Днепропетровск).
Sitecore занимается разработкой своего продукта - Sitecore CMS, а также сопутствующих к нему расширений:
- Sitecore Intranet Portal - решение для созданий Интранет-вебсайтов
- Sitecore Azure - расширение для публикации Sitecore CMS в облако
- Web Forms For Marketeers - упрощает создание опросников и форм в Sitecore CMS
- Sharepoint Integration - расширение для интеграции с Microsoft Sharepoint
Sitecore CMS
Sitecore CMS основывается на следующих технологиях:
- ASP.NET
- MSSQL - используется для хранения данных и может быть заменено MySQL/Oracle БД.
- Lucene - используется для поиска в CMS
Хранение контента в CMS
Данные в Sitecore представлены в иерархическом виде.
Каждый элемент дерева (Item) основан на шаблоне, который описывается списком полей.
Поле описывается именем и типом поля. Sitecore CMS включает большой список полей которые покрывает все базовые типы. К слову можно с лёгкостью добавлять собственные типы для полей.
На каждый элемент накладывается представление, которое может быть как:
- ASP.NET User Control-ом
- XSLT
- WebControl-ом
- или даже ASP.NET MVC view, поддержка которого добавлена в последнюю версию CMS
Backend
После доступа в админку Sitecore многих разработчиков посетит приятное дежа-вю. :)
Иногда складывается впечатление что работаешь в RDP. Админ-панель содержит множество полезных утилит:
- Редактор пользователей
- Редактор разрешений доступа к контенту
- Редактор контента
- Инструменты разработчика
- И др.
Кроме того разработчик может создавать свои расширения и утилиты к CMS с помощью Package Designer-а.
Наряду с обычной админкой Sitecore включает Page Editor который позволяет пользователям редактировать контент прямо на сайте.
Производительность
В основном работа с данными в Sitecore идёт не через БД, а через API.
Отсюда возникает закономерный вопрос. Насколько он быстрый?
Не вдаваясь глубоко в детали скажу что Sitecore под капотом кеширует и индексирует данные таким образом что издержки сведены к минимуму.
http://adeneys.wordpress.com/2010/09/17/sitecore-api-vs-sql/ - Здесь можно посмотреть очень интересное сравнение по скорости импорта данных в Sitecore по сравнению с SQL.
Расширяемость и поддержка IDE
Почти любой компонент системы можно расширить или подменить. Большинство базовых типов системы определены в config-файлах и их можно подменить своими.
Кроме того расширение Visual Studio Sitecore Rocks упрощает создание Sitecore вебсайтов.
Выводы
Для меня знакомство с Sitecore CMS было крайне приятным.
Из плюсов:
- Разработка очень схожа с разработкой ASP.NET приложения
- Простое в изучении API и обилие документации в Sitecore Developer Network
Из минусов:
- Множество техник разработки на укладываются в процесс написания вебсайта на Sitecore (юнит-тестирование, CI, и др.)
Комментарии
Отправить комментарий