Сравнение Symfony vs WordPress

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

Симфони — лидер среди программистов

ВордПресс — лидер на рынке сайтов, среди пользователей и предпринимателей.

Обе платформы можно применять для разработки сайтов, веб-приложений или даже бэкендов под SPA или мобильные приложения.

Споры о том что хорошо и что плохо зачастую порождаются отсутствием контекста.

Порог входа разработчиков и особенности на разных уровнях

Начинающие — прикольней в ВордПресс

Если отталкиваться от начинающих программистов то сделать какие то простые сайты, блоги, магазины на основе готовых тем и плагинов сильно проще в WordPress.

А также сильно проще начинающим делать какие то доработки.

По этой причине в ВордПресс очень много начинающих программистов.

Это такой трамплин для старта.

В Симфони этих ребят почти нет, потому делать какие то простые и типовые вещи тут будет сложно. Порог входа очень высокий.

Средние программисты выгоднее в Симфони

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

В Симфони меньше новичков, если программист что то пишет — высока вероятность что он знает правила, соглашения, паттерны и будет писать так как надо в большинстве случаев.

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

Если скорость разработки важнее чем защиты от дурака — то ВордПресс часто выигрывает. Опять же потому что там больше свободы и больше готовых плагинов.

У ВордПресс есть доступ ко всем модулям Симфони, но помимо их есть еще +50000 доп плагинов.

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

Старшие программисты — выбор уже не в платформе

Тут вот уже сложный выбор. Оба типа программистов хороши. Могут делать все что угодно. Хоть бэк для мобильных приложений запилить с асинхронностью, хоть магазин с подтанцовкой сделать.

Тут скорее вопрос низкого старта. Если вам магазин делать, то ребята с ВордПресс знаниями быстрее стартанут и далее сильно оторвутся от Симфонистов.

А если вы CRM пилите с ReactJS на 10 000 пользователей, то тут скорее всего выгоднее Симфони.

Однако тут больше решает не платформа, а то какие программисты у вас есть?

Найти хороших прогеров на Симфу и ВордПресс одинаково сложно. Но если нашли — считайте что вы в дамках.

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

Быстрый старт продукта и MVP

Скорость старта тут сильно зависит от типа продукта.

Если вы пишите простой бэк под мобилы, то особой разницы нет. В обоих случаях есть REST API & GraphQL. Выбирай не хочу.

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

По скоростям и гибкости они примерно одинаковы, при наличии знающих программистов в команде.

А вот с ростом команды до 10-20 человек и ростом финансовых рисков из-за ошибок, становится интереснее Симфони. По тем причинам что были отмечены выше — больше ограничений, больше соглашений, больше директивности, больше защиты от дурака, меньше риски выстрелить себе в ногу.

У вас 10-20 программистов, за всеми уследить сложно, есть джуны и мидлы, на ВордПресс новички легко могут прострелить ногу, сломать систему, соответственно если при этом простой системы на 1 день будет вам стоить 1-2 млн руб, то пусть лучше команда будет работать в 10 раз медленнее, зато в 10 раз надежнее и меньше риск потерять деньги.

Работа с базой данных

В ВордПресс используется CPT & EAV архитектура БД. Это очень гибкая штука, которая позволяет творить супер гибкие структуры данных без лишних затраты.

Можно на low-code собрать все что угодно. Но с ростом данных и без знаний особенностей работы БД — все это может очень сильно начать тормозить.

В Симфони есть ORM типа Доктрина. Она хорошо работает на средних таблицах и БД.

Но постоянно приходится париться с миграциями как следствие архитектуры. И даже на мелких таблицах коих бывает много.

На средней дистанции Симфони часто бывает выгоднее. Хотя при желании никто не мешает воткнуть Доктрину или Элокнет в ВордПресс. Но так мало кто делает потому что мало кто знает что так можно 🙂

На больших данных обе платформы одинаковы. Там в любом случае уходишь в SQL пишешь кастомные модели. Потому ORM-first или EAV-first перестает играть роль.

Ну или вообще втыкаешь что то типа Cycle ORM и играешь по новым правилам.

Разница между ВП и Симфой стирается.

Если у вас джуны работают то им с ВордПресс проще.

Если у вас мидлы то им проще Симфони.

А если сеньоры — им фиолетово.

Хайлоад — легче в Симфони

Тут тоже особой разницы нет. Вы ограничены только скоростью PHP и мозгами команды.

Очереди сообщений с RabbitMQ, Redis, REST API, балансировка с докерами, вебсокеты с центрифугой — работают примерно одинаково хорошо.

Мидлам опять же проще работать с Симофни и гарантировать скорость ответов сервера.

Сеньорам без разницы.

А джуны вообще не понимают о чем речь.

Императивность и декларативность — сложный выбор

Эти понятия относительные.

ВордПресс относительно Симфони более императивный. Тут все написано кодом. И читая код ты понимаешь что и как работает. Но этого кода в некоторых задачах надо писать больше. Особенно если мы решаем какие то архитектурные задачи.

А вот бизнесовые задачи наоборот, за счет доп базы плагинов часто удается обойтись low-code решениями. Минимум кода, а задача готова.

За счет этой же фишки при подключении модуля (тут они зовутся плагины) все включается автоматом и работает без кода.

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

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

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

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

Админка — выигрывает ВордПресс

Тут рискну сказать что админка в ВордПресс круче. Она едина для всего мира. Легче. писать под него модули, зная как ими будут управлять 1000 клиентов по всему миру. Без программирования.

В Симфони чтобы запилить админку надо сначала поломать голову над выбором. А потом еще постараться написать что то удобное. Большинство админок которые я видел на Симфони представляли жалкое зрелище. Прям боль и слезы. Но конечно бывают и исключения.

Отчасти по этой причине на Симфони мало бизнес решений. Потому что их надо конфигурить, а как все это предусмотреть не зная какая админка будет у клиента — хз.

ООП и архитектура расширения функционала

Вот тут очень прикольная штука. Многие заявляют что ВордПресс не про ООП. Но это не совсем так. Там просто очень редкий тип ООП.

Есть 2 основных фланга ООП:

  • ООП через иерархию классов
    • Это то чему нас учили в институте и то чем усыпан весь Интернет.
    • 99% программистов примерно так и думают.
    • Ярким представителем крайней степени этой идеологии является Егор Бугаенко, с его книгой Элегантные объекты https://habr.com/ru/company/piter/blog/418157/
  • ООП через обмен сообщениями
    • Про эту архитектуру мало кто из рядовых программистов знает
    • Яркими представителями этого фланга являются:
      • Алан Кей — автор термина ООП (почитайте его цитаты в Интернет, например тут или тут)
      • Дэвид Уэст с его книгой «Object Thinking»

Очень прикольно читать интервью Егора Бугаенко и Дэвида Уэста тут https://jug.ru/2016/09/bugayenko-west/

Ключевым моментом тут является понимание что архитектура ООП в ВордПресс основана на хуках и обмене сообщениями. Да 99% программистов ничего об этом не слышали. Но топ программисты уровня Алана Кея и Дэвида Уэста в теме )

Ну и вероятно в команде ядра ВордПресс тоже есть кто то в теме, потому его архитектура работает на этом типе ООП.

А вот в Симфони используется архитектура ближе по идеологии к 1му типу. Потому она так понятна и хорошо знакома 99% программистов.

От сюда и идет миф о том что ВордПресс это не про ООП.

Потому тут стоит сказать так:

  • если вы за общественное мнение большинства программистов то лучше брать Симфони
  • если вы за идеи топовых программистов типа Алана Кея и Дэвида Уэста, то ВордПресс будет интересней

Заключение

Из своей практики 10 лет разработки и руководства разными командами, я пришел к выводу что нельзя сказать что круче? ВордПресс или Симфони?

Оба инструмента прикольные. Каждый по своему.

Выбор что делать зависит скорее от специфика задач и состава команды.

Где то выгоднее брать ВордПресс. А где то выгоднее Симфони.

Если кто то топит за то что какая то платформа лучше в вакууме без контекста — гоните в шею этих джуниоров.

Ответить

Ваш адрес email не будет опубликован. Обязательные поля помечены *