Прочитав много топиков посвященных вопросам выбора cms, фреймоврка или написание их с нуля — решил поделится своей историей и заодно пролить свет на незаслуженно обделенную вниманием CMS Djem, так как несмотря на присутствие ее разработчиков на хабре, она лишь вскользь упоминается в комментариях, да и вообще помимо официального сайта djem.ru информации в интернете практически нет.
Предисловие
И так обо всем по порядку. Как и многие начинающие программисты энное количество лет назад я написал свою CMS на который к удивлению смог создать не только парочку собственных сайтов, но и выполнять в качестве фри-лансера регулярные заказы на разработку сайта. Время шло, система допиливалась, на ней делались все новые и новые сайты (в общей сложности около 40) и вот в один прекрасный момент я понял, что настал момент выбирать — либо я занимаюсь разработкой cms, либо разработкой сайтов. Разумеется выбор пал в пользу второго, так как это меня кормило =) Передо мной встал вопрос выбора платформы и я стал вспоминать все с чем хотябы вскользь пришлось работать за эти годы… Несколько ранее я имел честь учавствовать в разработке крупного рекламного сайта спроектированного по образу и подобию www.bbc.co.uk где в качестве платформы и использовался Djem
И так чем же он привлек мое внимание
Начнем с банального: во первых в отличает от моей cms он уже имел механизм шаблонов, причем это был не какой-нибудь Smarty (о котором у меня с прошлых проектов осталось очень неприятное впечатления), а собственный язык djemscript, который на удивление оказался очень удобным. Во вторых визуальный редактор модулей, чем-то напоминающий Visual Studio или Delphi с их компанентами. Я практически визжал, узнав, что доработки которые мне периодически приходилось делать индивидуально под клиента делались в пару кликов, вместо долгого перелапачивания кода, написания всех процедур работы нового поля с БД итп. Но и на этом преимущества не заканчивались, в последнее время я уделял большое внимание скорости генерирования страниц и как в предидущих случаях djem уже имел достойный ответ на мой вопрос — он изначально является генератором статичных файлов, это же решает и многие проблемы безопасности. А на сладкое разработчики припасли и встроенную систему контроля версий документов.
И что же тут особенного?
- Djem не является cms или фреймворком в привычном понимании, это скорее конструктор состоящий из сервера на Perl и кроссплатформенного клиента на C++
- В нем нету привычного понятия «модуль», все состоит из документов, имеющих тип (структуруконтент шаблон) и представление (дизайн шаблон)
- Удобство копирования материалов или настроек с одного сайта на другой. Все мы уже плотно сидим на Ctrl+C и Ctrl+V и незачем переучиваться
- Удобство импортаэкспорта данных (слава XML)
- Отлично подойдет и для CRM
Сухо. Плюсы и минусы.
— Цена. Сейчас она значительно ниже, чем в момент нашего первого знакомства, но даже 9 600руб. за минимальную версию это львиная доля бюджета если говорить о простых типовых сайтах.
— Документация, сообщество. Документация есть на официальном сайте, но в моем опыте она не смогла помочь в решении ряда проблем. Комьюнити отсутствует как таковое, а жаль…
+ Экономия времени. Разработка реально стала быстрее и увлекательнее за счет визуализации многих процессов
+ Поддержка. Здесь она настолько оперативная и конструктивная, что даже отчасти затмевает минус недостатка комьюнити. Чувствуется искреннее желание помочь, а не банальные отписки. (пользуясь случаем отдельное спасибо Михаилу Коротаеву)
+ Тестовый периодпериод разработки Очень кстати пришлась возможность получить лицензию на срок до 3-х месяцев, а оплатить после окончания разработки проекта и оплаты заказчиком
Пара скриншоты
Послесловие
Сейчас паралельно разрабатываю два проекта на ней, один долгострой с очень интересным уникальным функционалом, второй — более приземленный информационный портал финансовой направленности, надеюсь об этих проектах по мере готовности еще удастся написать подробнее. Для меня этот продукт действительно стал панацеей, и я надеюсь что смог заинтересовать Вас и быть может кто-то после прочтения найдет для себя отличный инструмент вэб разработки.
Предвидя комменты, хочу уточнить, что не получил ни цента от разработчиков за этот пост =) А целью его написания был краткий экскурс в этот продукт, и я надеюсь в отдаленной перспективе все-таки найти единомышленников среди и сформироваться в комьюнити дабы оказывать взаимопомощь друг-другу во время разработки.
Автор: RuLab