Друпал на концептуальном уровне

Главные вкладки

Аватар пользователя Макс К. Макс К. 19 апреля 2007 в 21:52

У нас с партнером есть несколько доверенных знакомых. Мы передаем между собой веб-сайты на поддержку, обмениваемся заказчиками. Хотя мы все работаем независимо друг от друга, у нас сложились доверительные партнерские отношения. Этакое микросообщество сайтостроителей.
Легкая передача проектов требует одинаковых инструментов для разработки проекта. До поры до времени в качестве единого инструмента разработки сайтов у нас выступал редактор Dreamweaver. Когда решили переходить от статических сайтов на динамические, стали подбирать подходящую систему управления сайтами (CMS). Мы остановились на CMS Друпал. Подробнее о причинах нашего выбора.
Цитата
“Знание нескольких правил освобождает от знания множества фактов”.
Поясню на примере. Маленький мальчик Артурик с азартом дерет за волосы девочку Карину:
Артурик дерет Карину за волосы
Ему можно сказать факт: “Артурик не должен обижать Карину”. Тогда он не будет драть Карину, но будет продолжать обижать других девочек. И будет спокойно смотреть, как другие мальчики обижают девочек. Если опираться на факты, то при каждом подобном случае Артурику придется объяснять: “Ты не должен драть и эту девочку”.
Поэтому когда Артурик чуть подрастет, ему вместо факта объясняют правила: “1. Ты – мальчик. 2. Карина – девочка. 3. Мальчики никогда не обижают девочек.”.
Если Артурик затрудняется уверенно распознавать мальчиков и девочек, то можно объяснить ему еще правило: “4. Если в платьице – то это девочка.”. А когда Артурик подрастет и начнет различать мальчиков и девочек по лицу, то он будет самостоятельно соблюдать правило “мальчики не обижают девочек”.
Обучение через правила немного более трудоемкое, чем быстрое изложение нужного факта. Но зато обучение на правилах избавляет от необходимости давать множество фактов. Поэтому все человечество учится на правилах. Выборочные факты служат лишь иллюстрацией к правилам.
Системы управления сайтами (CMS)
Друпал
Система управления сайтами Друпал создана на правилах. Правила простые и пронизывают Друпал насквозь.
Правило 1. Сущность статья. Есть статья (node, “узел” в терминологии Друпала). Она может быть разного вида (статья на форуме, в дневнике, голосование, …), но во всех случаях у нее есть свой отдельный адрес
Правило 2. Сущность комментарий. К каждой статье можно давать комментарии, вне зависимости от ее вида. Тема комментария помечена своим собственным внутренним адресом.
Правило 3. Сущность классификация (таксономия). Можно вводить на сайте разные классификации. Например, ввести ботаническую классификацию. Или классификацию рас и народов. Классификация состоит из древообразного списка рубрик. Каждую статью можно пометить одной или несколькими рубриками определенной классификации. В каждой рубрике накапливаются статьи, помеченные этой рубрикой.
Правило 4. RSS-канал. Каждая страница, на которой собраны анонсы (статей в дневнике, статей в рубрике классификации, рубрики форума,…), имеет свой RSS-канал и возможность подписки.
Правило 5. … 
Правила в Друпале вводятся продуманно. И все правила прекрасно накладываются друг на друга. Например, если будет добавлен новый тип статей под названием “Товар”, то он автоматически получит все возможности, которыми обладают другие виды статей – возможность комментариев, возможность раскладывать по рубрикам классификации, свой RSS-канал, возможность подписки на новые статьи с товаром,...
Количество правил в Друпале относительно невелико, они продуманы и прекрасно взаимодействуют между собой. Всякий раз, когда на друпаловском сайте нужно реализовать какую-то очередную возможность, ее строят из комбинаций стандартных правил, поддерживаемых ядром Друпала.
Обычные CMS 
Обычные CMS тоже включают в себя правила, но большей частью строятся на фактах. Если нужна какая-то возможность, то создатели обычных CMS просто добавляют ее в ядро. В результате получается система управления сайтом с обилием возможностей, доступных прямо из коробки. Но если нужно отклонится хоть на шаг от доступных возможностей, то это сопряжено с большими трудностями.
Список возможностей хаотичен и определяется вкусами создателей CMS. Список правил куц, непоследователен и правила не пронизывают CMS насквозь, а действуют со множеством исключений. В основном это какие-то возможности, которые были внедрены в CMS без учета правил.
Выбор CMS
Есть 2 способа выбрать себе подходящую систему управления сайтом.
Способ 1. Подобрать под вашу задачу обычную CMS, у которой возможности примерно совпадают с вашими потребностями. Плюс – быстрый старт. Минусы – на каждом новом сайте вам придется подбирать новую CMS, потому что у каждого сайта свои задачи и своя оптимальная CMS. Или придется вымучивать найденную CMS под новые задачи.
Способ 2. Берите в качестве платформы для разработки Друпал.
Из минусов Друпала.
У Друпала в стандартной поставке очень спартанский  список готовых возможностей. Рюшечки практически отсутствуют. Любые украшательства и изменения стандартной поставки приходится строить через комбинацию правил. Пока не выучите правила Друпала, не сможете увеличивать потребительские возможности вашего сайта.
Другими словами, у Друпала чуть замедленный старт.
Из плюсов Друпала.
Сила Друпала не в рюшечках из коробки, а в системе правил. После того, как вы поймете систему правил Друпала, у вас развяжутся руки. Вы сможете строить на своем сайте все, что хотите.
При смене задачи на новом сайте вы по прежнему сможете использовать тот же самый Друпал, но только по другому скомбинировав его правила.
С каждым новым сайтом на Друпале его правила будут вживаться в вашу плоть. И ваш опыт будет расти.
Позже вы сможете строить на основе Друпала очень сложные сайты. Они будут работать как часы и будут простые в поддержке. Ведь они будут построены на небольшом количестве Друпаловских правил.
Почему Друпал
Почему же создатели других CMS не идут по пути Друпала и не трансформируют частные возможности в общие правила?
Это связано с тем, что обычно CMS создают для решения каких-то задач. Для облегчения освоения CMS создатели стараются внедрить в нее побольше возможностей из коробки и поменьше грузить пользователей изучением правил.
Друпал создавался и развивается как платформа для создания сайтов самой разнообразной тематики. Отсюда его выверенный список правил и ограниченное количество встроенного потребительского функционала.
Еще цитата 
Один из друпальщиков, перепробовавший несколько разных CMS, сформулировал свой опыт так: “С другими CMS сначала все хорошо, а после – очень плохо. С Друпалом наоборот, сначала плохо, а потом очень хорошо”.
Если кто-то разобрался в правилах Друпала, он потом уже не может смотреть на другие CMS. Потому что мыслить по выученным правилам проще, чем пожизненно тонуть в море разрозненных фактов и ждать, пока разработчик CMS соизволит добавить к ней нужную возможность.
Советы по выбору CMS
Если вам нужно быстро поднять динамический сайт и больше никогда в жизни вы не будете заниматься сайтостроением, то подбирайте под вашу задачу подходящую CMS и через полдня у вас будет свой динамический сайт. Правда, имейте ввиду, что развивать сайт в нужном направлении у вас не получится. Обычные CMS держат своих пользователей в жестких рамках. “Шаг влево-вправо – попытка к бегству. Прыжок на месте – провокация. Конвой стреляет без предупреждения.”. И для других задач выбранная вами CMS может просто не подойти.
Если вы профессионально занимаетесь сайтостроением, то рекомендую присмотреться к Друпалу. Общее мнение нашего микросообщества – с выбором Друпала мы попали в точку.
Гибкий и логичный, Друпал приносит сайтостроителю наслаждение во время построения сайтов и позже, во время поддержки.
Источник: http://www.razgonka.ru/info/92

Комментарии

Аватар пользователя Макс К. Макс К. 19 апреля 2007 в 23:40

Можно и на своих сайтах размещать и в Wiki на полировку засунуть.

Ссылку лучше ставить на первоисточник статьи, http://www.razgonka.ru/info/92. (Здесь на Drupal.ru лежит только первоначальная, стартовая версия статьи. На сайте Razgonka.ru качество статьи будет выше, там работает система коллективной правки статей. Со-партнеры заходят и правят статьи на свой вкус. Иной раз через полгода и не разберешь, кто что писал. Но качество заметно улучшается).

Аватар пользователя sadmin sadmin 21 апреля 2007 в 23:54

Особенно точно прозвучало что 'с друпалом потом хорошо'. Когда начинал знакомиться, этим руководствовался, теперь не жалею.

Аватар пользователя KCEOH KCEOH 22 апреля 2007 в 4:43

Хмм... тут несколько ошибочны понятия. Друпал CMF - потому-то и есть настройка под что угодно. CMS - система управления контентом, вот что разрабы этой cms выберут в качестве контента, с тем и можно работать.
Новости - дак новости, блог - дак блог.

В целом по статье - приличный материал, без особой скрытой рекламы, как любит обычно разгонка Smile Ссылку на оригинал можно кидать людям, ищущим CMS.

Аватар пользователя Макс К. Макс К. 22 апреля 2007 в 21:33

KCEOH says: тут несколько ошибочны понятия. Друпал CMF - потому-то и есть настройка под что угодно. CMS - система управления контентом, вот что разрабы этой cms выберут в качестве контента, с тем и можно работать.

Если бы еще разработчики могли под нужную тему и еще себе голову себе выбрать. Sad

Что мешает разработчикам делать CMS со сквозными правилами? Если создатели Joomla захотят сделать конструктор CMS, то у них сразу таки все получиться сделать сквозным или все останется на глубине 1 уровень?

Два языка программирования, создавались примерно в одно и то же время. Си и Паскаль. Си крив, весь в исключениях, нелогичен. Паскаль строен и последователен. Учебник по Си в несколько раз толще, чем учебник по Паскалю, хотя делают примерно одно и то же. (Не для разжигания религиозных войн!)

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

Строго выверенный набор правил не падает с неба. Среди разработчиков Друпала есть кто-то, кто железной рукой сдерживает фантазию остальных разработчиков и добавляет в Друпал только те правила, которые полностью ложатся на остальные.

В результате дистрибутив Друпала весит в 10 раз меньше дистрибутива Джумлы. Друпалу есть куда развивать свои правила и расти. А Джумле куда развиваться, в дистрибутив 100 Мбайт?

KCEOH says:В целом по статье - приличный материал, без особой скрытой рекламы, как любит обычно разгонка

Похоже, у Вас глаз замылился. У меня в каждом сообщении на сайте Drupal.ru есть реклама. В старых сообщениях реклама идет даже по 2 раза. Причем совершенно открытая. Трех попыток хватит, чтобы найти? Wink

Аватар пользователя Dan Dan 23 апреля 2007 в 0:35

>Два языка программирования, создавались примерно в одно и то же время. Си и Паскаль.
>Си крив, весь в исключениях, нелогичен. Паскаль строен и последователен.
>Учебник по Си в несколько раз толще, чем учебник по Паскалю, хотя делают примерно одно и то же.

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

PS: исключения в СИ - это фича, позволяющая писать программы с высоким устойчивостью к ошибкам разного рода (используется не только в Си)

Аватар пользователя ryurix ryurix 23 апреля 2007 в 10:39

Почему-то на С написано 95% системного софта. (включая Win32) А офис написан на С++.
Так что, хозяин разгонки -- жизнь сама вам показывает, какой язык лучше. Wink
И доказывает, что вы малость не правы, и что вы знаете не все Законы жизни.
Впрочем, дизайнеру простительно это.

Аватар пользователя KCEOH KCEOH 23 апреля 2007 в 10:41

2 Razgonka.ru
я говорил про скрытую рекламу, а-ля - "а вот у меня-то на сайте сделано так-то... ". Остальное - копирайты и указание первоисточника.

Соглашусь с Dan'ом. Предназначения у языков разные. Я немало программ писал и на том, и на другом. Порой матерился, что на паскале не могу реализовать какую-то фишку.