Что лучше учить в связке с React для бекенда?

Хочу сделать нагруженное и сложное для меня по архитектуре приложение, какой-нибудь чат, видеохостинг или облачный сервис. По фронту у меня классический стек react+typescript, что лучше мне выучить для бекенда Node js или Next js? С учетом того, что потом это пригодится при устройстве на работу и позволит реализовать весь функционал в моих пет-проектах (уже надоело клепать приложения погоды). Насколько я понимаю, разница у node и next, в том что node js может работать с файловой системой и может использовать многопоточность, но насколько мне это пригодится на работе джуном неизвестно.
В общем, хочу совместить приятное с полезным самым рациональным путем

Дополнительно:

Что значит выучить ноду? Это рантайм.
Но ещё более интересно как ты собрался писать бек на фронтенд фреймворке?

  • Так Next разве не делится на фронт и бек? Если бы вы делали фулстак приложение на React какой стек выбрали бы?

    П.С. про ноду я лоханулся, пробовал писать на ней, но даже в суть вопроса не въезжал видимо

  • Разделите понятия рантайма (Node.js), фреймворка для SSR (Next.js) и фреймворка для бекенда (Nest.js).
  • Не надо ставить как можно больше тэгов. Лучше оставить один, но конкретный, с которым проблема.
    См.п.3.1 Регламента.
  • видимо у меня есть пробелы... разве SSR делается не на стороне сервера? Server Side Rendering. Я просто так до конца и не понял, что он делает на фронте. Надо просто попробовать, чем 10 спросить
  • pinkhead_psd,

    разве SSR делается не на стороне сервера?

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

  • Node.js - это рантайм,
    Next.js - это фреймворк.

    • Понимаю, что node это среда для работы JS на сервере, а next фреймворк. Но на практике мне это ничего не дает, чтобы понять, что больше пригодится. Оба же могут использоваться для создания серверной части в приложении. Казалось бы node js должен быть более функциональным - бери и учи, сделаешь все что угодно. Однако в вакансиях часто next вижу, вот и задался этим вопросом
    • pinkhead_psd, никто не пишет на нексте бэкендную часть, а если это кто-то делает то он полный лох
    • pinkhead_psd, ваш вопрос из разряда «на чем поехать? На двигателе или на седане?»
    • Хах, понял вас)) Next фреймворк для Node js, как бы. По факту фреймворк для JS, но используется в ноде. Правильно понимаю? То есть правильнее было бы задать вопрос допустим, что лучше выбрать Express или Next js?
    • pinkhead_psd, да но тоже двояко так как внутри next.js используется express.js, я считаю так, express для изучение бэка и щупаний всего что там есть а next для решения быстрых бизнес задач так как там уже все готово и остается просто скачать и писать бизнес логику
    • Спасибо! В итоге для себя я вынес, что проще не заморачиваться и сделать приложение на экспрессе, тем более я уже его тыкал. Понадобится Next, его не так долго осваивать. Я думаю это все просто будет плюсом в вакансии, точно уж не главным требованием

    Ответы:

    что лучше мне выучить для бекенда Node js или Next js

    NestJS

    По факту сейчас есть 5 коммерчески востребованных языка

    C#, Java, GO, PHP, Python
    Причем 1,2,3 лидируют.

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

    • Это прямо тру бекенд. Я занимаюсь фронтом, просто нужна технология, которая поможет написать фулстак приложение, а учить ради этого еще один язык, пока что сомнительная идея как по мне. Насчет ноды не знаю, слышал схожее мнение и про GO
    • Ну го все таки не лидирует . Если судить по исследованию хабра кнч. Но это не мешает ему быть самым лучшим языком в мире для микросервисов.

      П.С. Зря вы так про ноду, фронтендыВбекенды сделали ноду очень популярной(раза в 2 популярнее GO).

    • Но я так понимаю, что нода в основном идет фулстаком. Я мало видел вакансий на чистый Node js
    • pinkhead_psd, учить один из них все равно придётся так что лучше сейчас и неторопливо, чем потом и по верхам.
    • Валентин Бируля,

      П.С. Зря вы так про ноду, фронтендыВбекенды сделали ноду очень популярной(раза в 2 популярнее GO).

      Чем замеряли? По замерам вакансий, нода сильно отстаёт в снг

    • Михаил Р., Не помню, статью читал на хабре недавно
    • С таким же успехом и C++ лидируют. Абсолютно разные задачи.
      Можно наверное из этого списка скомпоновать C#/Java и Python/PHP.
    • Sanes, C++ для бэкенда только 2 компании используют, это скорее исключение
    • Владимир Коротенко, вряд ли две. У меня работа с хостингом связана, точно знаю, что ISPsystem использует. А сколько организаций, про которые мы не знаем? Огромное кол-во прикладного софта пишется.
    • Что лучше учить в связке с React для бекенда?

    • Sanes, Именно прикладного софта, но никак не бэкэнда. Тому впрочем есть куча причин, первая это скорость разработки, второе типичные ошибки.
    • Владимир Коротенко, ну тогда да, плюсы тут редко встретишь.

     

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

     

      • Что лучше учить в связке с React для бекенда?Есть ответ
      • 07.04.2024
      Ответить

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

      1. **Node.js**: Node.js - это среда выполнения JavaScript на сервере, которая позволяет писать серверный код на JavaScript. Он интегрируется отлично с React, так как оба используют JavaScript. Node.js также позволяет создавать API и обрабатывать запросы от фронтенда.

      const express = require('express');
      const app = express();
       
      app.get('/', (req, res) => {
        res.send('Привет, мир!');
      });
       
      app.listen(3000, () => {
        console.log('Сервер запущен на порте 3000');
      });

      2. **MongoDB**: MongoDB - это NoSQL база данных, которая хорошо сочетается с Node.js и React. Она позволяет хранить данные в формате JSON, что упрощает работу с данными на фронтенде.

      const mongoose = require('mongoose');
      mongoose.connect('mongodb://localhost/mydatabase');
       
      const Schema = mongoose.Schema;
      const userSchema = new Schema({
        name: String,
        age: Number
      });
       
      const User = mongoose.model('User', userSchema);

      3. **GraphQL**: GraphQL - это язык запросов для вашего API, который позволяет клиентам запрашивать только необходимые данные. Он удобен для работы с React, так как позволяет оптимизировать запросы и уменьшить объем передаваемых данных.

      const { graphql, buildSchema } = require('graphql');
       
      const schema = buildSchema(`
        type Query {
          hello: String
        }
      `);
       
      const root = {
        hello: () => {
          return 'Привет, мир!';
        },
      };
       
      graphql(schema, '{ hello }', root).then((response) => {
        console.log(response);
      });

      4. **Express.js**: Express.js - это фреймворк для Node.js, который упрощает создание API и обработку запросов. Он позволяет быстро настроить сервер и маршруты для вашего приложения.

      const express = require('express');
      const app = express();
       
      app.get('/', (req, res) => {
        res.send('Привет, мир!');
      });
       
      app.listen(3000, () => {
        console.log('Сервер запущен на порте 3000');
      });

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

    Оставить комментарий