Данил Карпов
Мыслитель
(7250)
5 лет назад
Nodejs конечно лучше. У ноды на порядки больше возможностей как на сервере помимо SSR(который имеет смысл юзать с реактом не только для seo нужнд но и для для ускорения первоначального рендеринга и для поддержания простоты проекта (пилить отдельную логику пререндеринга для закрытия сео нужд это маразм, ssr тут всегда лучшый выход)) это относительно нормальный event loop позволяющий создавать долгоиграющие websocket сервера и многое другое, то для чего пхп не предназначен (универсальный ты наш ога), есть TypeScript в легкую дающий посасать пхп c его жалкими попытками типизации (типизация это интерфейсы, дженерики, автоматический вывод типов и многое другое а не то гно чем пытаются кормить потребителей пхп). Важно сказать о подходе ES стандартов позволяющих динамично расширять язык без потери обратной совместимости. Ну и JS это пахан универсальности - на нем можно писать и сервер сайд и веб и мобильные приложения и десктоп.
Удел пхп это легаси код - всякие джумлы допиливать. Нет никакого смысла брать его для новых проектов.
Дон Пабло ЭскобарПрофи (796)
5 лет назад
просто я часто читаю, что node намного лучше php и что лучше уходить в сторону джаваскриптов
да и на upwork вакансий по ноду прилично,
Андрей
Высший разум
(483062)
5 лет назад
1. Использование React в браузере никак не зависит от того, какой язык у тебя на сервере. Единственное использование React на сервере - это серверный рендеринг страниц. Только вот те страницы, которые имеет смысл рендерить на сервере, не имеет смысла делать в React.
2. Node.js - куда более узконишевое решение, нормально работающее только для небольшого круга серверных задач. Не знаю, как сейчас, а ещё совсем недавно там даже производительных адаптеров к реляционным базам данных не было. PHP куда универсальнее.
3. PHP - при правильном использовании - более надёжный язык. А в PHP 7.4 ещё и типизированные атрибуты завезут. Выстрелить себе в ногу и заметить это только тогда, когда код уже на продакшене, в JavaScript намного проще.
4. Достоинства изоморфности кода сильно преувеличены. Современный большой сайт - это микросервисы, в которых ни изоморфность, ни серверный рендеринг никому не нужны. Более того, разные микросервисы одного сайта часто пишут на разных языках. Так что в современном мире одним языком ты не обойдёшься. Советую посмотреть - дополнительно - в сторону Go.