Фронтенд умер или коротко о Next.js 14
Недавно Next.js обновился на 14 версию. Самое основное, что добавили — Server Actions. Если простым языком, это когда в одном файле, да даже в одной функции может быть фронтенд и бэкенд код.
Фронтенд умер?
Для тех кто не хочет дальше читать — пока что фронтенд жив, но есть нюанс.
В чем нюанс?
Server Actions появились в версие Next.js 13.4, но тогда они были как эспериментальная функция. Я её кстати успел попробовать на одном из своих пет-проектов. Ещё в этой версие добавили App Router, что было довольно непривычно первое время, но это уже другая тема.
Казалось бы, а что в этом такого? А дело в том, что при таком подходе как таковой фронтенд уже не используется. Точнее даже не так, он используется, но уже в связки с бэкендом. А это уже фулстек — когда разработчик пишет фронтенд и бэкенд.
Серверный рендеринг
Тендеция перехода на серверные компонтенты довольно чиста и понятна. Это как минимум быстро.
Забавно то, что PHP использует серверный рендеринг с самого зарождения языка, а если грубо говорить, то это 1994 год. Конечно, в самом 1994 году были немного другие задачи, чем сейчас, но подход тот же.
А вот тут в клиентском компоненте имопртируется серверный компонент:
Что будет с фронтендом?
Рынок фронтенда плавно двигается к фуллстэк, то есть фронтендерам нужно будет знать бэкенд, как минимум как писать SQL запросы к базе данных, какие бывают базы данных, и как шифровать данные.
Заключение
Как-будто сам фронтенд стал легче, но чтобы быть конкурентным на рынке к нему добавился ещё и бэкенд. Для новичков это может стать небольшой проблемой, ведь часто люди задаются вопросом: “А что учить, фронтенд или бэкенд?”. Сейчас всё двигается к тому, что фронтендеры сами по себе вымирают. А если вы фулл-стек, то нечего переживать.
Новый подход (nextjs) лучше старого разве что наличием какой-то строгой типизации (если использовать TS).
В остальном это выглядит как повторение неизученной истории (PHP).
Добавить хайповых слов для резюме и очередного повышения — ладно, мы поизучаем; для своих проектов — давайдосвиданья.
Хаха отличный комментарий, красавчик
Попробовал Next.js. Как по мне, стандартный React получше для больших проектов. Next.js имеет смысл использовать в проектах, где пользователей нет или их мало - иначе какой плюс от использования серверного рендеринга - если всё-равно надо на каждого пользователя запросы к бекенду делать?
Хороший вопрос. Плюс некста, что можно быстро сделать проект. Например, routing уже подключен. Или то что можно выбирать между SSG и SSR. Если в приложение SEO важно, я бы выбрал Next.js нежели ванильный React. Но минус для тех, кто любит строить свою архитектуру в зависимости от приложения. В нексте есть строгая архитектура которой нужно придерживаться, будь то это pages router или app router. Есть чёткие названия папок которые некст хочет увидеть.
А так и то и то имеет смысл на жизнь. Реакт в любом случае придётся учить потому-что 100500 проектов на нём написано.
Комментарий недоступен
Комментарий недоступен