Дамы и господа. Давайте обсудим плюсы и минусы Друпала и фреймворка.
Например , симфони.
Кто что скажет?
Я думаю тема актуальная. И не часто обсуждаемая.
Даже я бы сказал , секретная
Как бывшему программисту по Drupal а сейчас Symfony , я думаю что мне есть что сказать
Комментарии
Если есть, что сказать, то говори)))
Я, возможно, чего-то не понимаю , но разве Друпал 8+ не использует Symfony для реализации довольно небольшой части функциональности ядра? На мой взгляд, сравнивать CMS с фреймворком, это всё равно что сравнивать автомобиль с двигателем внутреннего сгорания. Двигатель - вещь нужная и необходимая, но на него не получится сесть и поехать в булочную, пока не приделаешь хотя бы трансмиссию, колеса, руль и тормоза.
Ну не скажи, что небольшой. Это как сказать, что фундамент - это довольно небольшая часть дома. Она то может и не самая большая, но на ней весь дом стоит
Всё верно, я же не говорю, что эта часть - неважная. Это действительно фундамент, но Друпал содержит в себе настолько много всего помимо фундамента, что объемная доля фундамента в этом во всем невелика.
Без фундамента дом не построишь, но жить на голом фундаменте без стен и крыши некомфортно
Зависит от целей, иногда отсутствие стен и крыши - это плюс, т.к. ничего не мешает возводить своё. Был у меня проект на Laravel (она, кстати, тоже на Symfony зиждется), надо было там очень много чего дорабатывать и было это всё очень легко, т.к. там контроллер тупо дёргает ORM и отдаёт это в шаблон. Всё просто, легко кастомизируется, АПИ простейшее, ресурсов жрёт минимум, в общем, благодать. Но вот как только надо было приделать к сущности поле с картинкой с возможностью загрузки картинки из админки, то оказывается, что готового виджета нет и надо самому писать его в шаблоне.
Так что я бы сказал, что Drupal, в отличие от фреймворков, имеет много лишнего, но при этом неслабо избавляет от рутины.
А я опять согласен - я же не говорю, что Друпал лучше Симфони, или что автомобиль лучше двигателя, я просто говорю, что эти вещи тяжело сравнивать, так как они рассчитаны на разные цели и разную целевую аудиторию. Если цель - доехать до магазина прям щас, то автомобиль лучше, а если цель - сделать трактор или танк, то двигатель точно будет нужен, а автомобиль придется разобрать и практически всё выкинуть.
Фреймворки типа Laravel по определению созданы для программистов - непрограммист там не сможет сделать вообще ничего, а CMS позволяют создавать сайты вообще без программирования, при этом конкретно Друпал дает еще и удобные инструменты расширения возможностей за счет "точечного" программирования.
Я бы даже задал вопрос так.
Насколько удобно сделать что-то нестандартное на друпале и на симфони
К примеру админку для управления рейтингом игр, стим аккаунтов, умным домом и тд
Это всегда большой вопрос, не имеющий простого ответа.
Надо прикидывать, сколько из предоставляемого Drupal функционала будет использовано, и сколько времени займёт его реализовать самостоятельно. Насколько надо будет расширять функционал после. А также, насколько важна производительность, например, которая у кастомного решения при правильном проектировании, будет заметно выше, потому, что и хранить информацию можно эффективнее, и обрабатывать в специализированном решении, чем в решении "на все случаи жизни". Ну и не будем забывать, что написание приложения с нуля, даже на основе какого-то фреймворка требует квалификации для правильного его проектирования.
В первых двух примерах, надо более подробное ТЗ, чтобы что-то сказать, последнее, если там не будет ничего больше, вероятно лучше делать на фреймворке. Я, по крайней мере, сделал выбор такой.
Вот пример
Допустим мы хотим создать блог
На друпале и на симфони
Время создания и там и там примерно одинаково
в друпале конечно мы получим красивую админку , редактирование и другие плюшки
Самое главное отличие симфони , там ничего нет. Есть базовый набор некоторых пакетов..но он прямо очень базовый
Вот к примеру кеширование.
В Друпале кеширование реализовано очень мощно, это многоуровневая система
В симфони вам дается функция а все остальное вы с нуля если захотите построите сами
Так во всем
Это шутка? На Друпале простой блог накликивается за полчаса без написания единой строчки кода, и через эти полчаса блоггер, который не только не программист, но и не очень продвинутый юзер, сможет уже писать посты с картинками, читать комментарии и банить неугодных комментаторов. Уверен, что на Симфони это будет гораздо дольше, да и зачем?
Но вот если речь не о блоге, а о веб-приложении для биржевой торговли биткойнами, или о каком-нибудь голосовом чате, то тут конечно нужно программировать нестандартные вещи с нуля, и тогда выбор будет не между Симфони и Друпалом, а скорее между Джавой или Ruby on Rails
Ну я бы сказал, плюс друпала - это его масштабируемость.
У его есть хорошая база , которую можно расширять.
У фреймворков базовый набор классов, а уже формы, взаимодействия и тд пишет человек..База намного меньше. Это и плюс и минус.
Можно быстро наговнокодить какой-то функционал.
В друпале это несколько сложнее, так как нужно будет отталкиваться от уже существующих компонентов.
Впрочем наговнокодить можно везде
В общем симфони проще друпала)