Обновить

От PHP к React: размышляем о вреде и пользе миграции

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров4.8K
Всего голосов 13: ↑5 и ↓8-1
Комментарии20

Комментарии 20

Фронт на PHP - это феерия смысла, а еще в сравнении он не так удобен как React, т.е. прямое сравнение сладкого с холодным. Ну да ладно, по утверждению автора PHP работает на фронте, т.е. в браузере, это позор какой то...

Для калькуляторов Реакт понадобился... РукаЛицо...
Всю эту фигню лет 10 назад пилили на jQuery и все работало значительно более предсказуемо для конечного пользователя.

"React решает проблемы производительности архитектурно. Он работает компонентно: меняется только тот участок интерфейса, где произошло действие. "
Ну да... а с помощью jquery нельзя проапдейтить конкретный элемент... Только можно: значения из json-чика воткнуть в ДОМ, готовый кусок ХТМЛ обновить (как в HTMX, но без него).

А Реакт - это, в первую очередь, про реактивность, от которой проблем больше, чем толку, судя по многим сайтам, сделанным с его применением.

Реакт вообще не про реактивность, это библиотечка для отрисовки компонентов, грубо говоря для создания веб-компонентов, кастомный элемент сделать и переиспользовать.

Некоторые вообще пилили калькулятор на html/css без единой строки на js-е)

При этом PHP н в бэкенде по-прежнему

Вы бы проверяли перевод того что публикуете.
Ну и слишком много глупостей, начните с основ, что для чего было придумано, и что есть на текущий момент.

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

Раньше это звалось server side rendering, и никого не надо было оправлять на фронт

PHP в бэкенде по-прежнему очень популярен, появились фреймворки (Laravel, Symfony)

Просто немного исторической справки - php как язык создан в 1995, Symfony - в 2005. Писать "появился" про нечто 20-летней давности странно.

"PHP-фронт" в целом это оксюморон, понятно, что имелась ввиду генерация HTML средствами php, но как будто так тоже уже не делают лет 10 даже самые древние компании.

Так и запишем - "Цифровые решения для бизнеса | финтех, логистика" заказывать в Clevertec не нужно 🙈😁

А ещё для интеграции фронта на React нужен SSR, что тянет за собой ограничения по хостингу.

Для перевода фронта на React малой кровью (создание интерактивности) мы переводим на React только некоторые блоки страницы

И в этом случае никакого смысла в React нет. Для таких целей больше подходит Vue.
Это если реативность ради реактивности нужна, а это и есть основная причина таких "апгрейдов".

P.S.: Еще можно какую-нибудь экзотику, типа AlpineJs, воткнуть. Для калькуляторов - более, чем достаточно.

Оживленная дискуссия дала повод внести правки - так и сделали. Внимательным читателям спасибо, теперь вы соавторы

Laravel livewire изумительно для подобных вещей подходит. Большая часть обработчиков на сервере, но работает быстро, отзывчиво. И разрабатывается легко и быстро, не нужно отдельно делать апи для фронтенда.
Хотя и реакт вью прикрутить к ларавел никаких проблем. Есть готовые библиотеки Инерция и тд

У модно-молодежных фронтендеров (да и бекендеров тоже) React и прочие реактивные поделки ассоциируются исключительно с REST API.

И что плохого в кодогенерации rest api каким то drf spectacular > rtk query?

Пробовал я как то использовать шаблоны + htmx + tailwind, для чего-то простого вроде пойдет, но как только формы усложняются и логика тоже, проще плюнуть на эти бесконечные костыли и переписать на реакте

Тем, что на выходе глюкодром очень часто получается.
Все ЛЕГКО делается без htmx. HTML/CSS/jQuery, опционально бутстрап - все, больше ничего не нужно для 90% сайтов в интернете.
Нет там ничего сложноного, ну просто нет.
Те, для кого сложно без реактивных фремворков/библиотек, занимаются засорением интернета глючными поделками на этих самых фреймворках. Если для них jQuery сложно, то страшно представить какой шлак они клепают с использование реактивности. Реактивность - это генератор глюков. Это доказывается большинством сайтов, сделанных на js фреймворках.

Я уж молчу про сомнительные "модные" решения типа того, когда нормальная пагинация заменяется на убогую подгрузку при скролле (в Озоне, которые так и не смогли починить глючную пагинацию и просто убрали её).

P.S.: Я до сих пор так и не смог найти какого-либо достоверного обоснования того, что модно-молодежные подходы являютя следствием "хотелок" конечных пользователей, которые НЕ ЯВЛЯЮТСЯ программистами.

Jquery сейчас тоже не понятно зачем. ECMA 6, нативный js с выносом селекторов более чем за глаза. Нет спагетти кода, как раньше.

Если у тебя один web фронт, то просто делаешь SSR приложение с любым js фреймворком (или без него) и не страдаешь фигней. Сейчас фронт чуть более, чем полностью перегружен тем, чего можно на нем не делать вообще... Фронт сам создал себе сначала работу, а потом проблемы...

На счет высказывания:
"Мы ожидаем, что с переходом на React:

  • Среднее время разработки новой функции сократится на 40–50%

  • Поддержка станет проще. Компонентный подход и автотесты позволяет быстрее находить и исправлять ошибки, что обычно приводит к экономии на багфиксах и QA в пределах 30–35%.

  • Бизнесу удастся сэкономить около 20% бюджета в год с ускорением релизов и оптимизацией затрат на разработку и тестирование."

    Эти все пункты вообще на чем основаны? Чисто субъективизм автора и только...

Реакт это не про сокращение времени разработки вообще.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Информация

Сайт
clevertec.ru
Дата регистрации
Дата основания
Численность
201–500 человек