• Что нужно изучить для разработки современных веб-приложений?

    iiifx
    @iiifx
    PHP, OOP, SOLID, Yii2, Composer, PHPStorm
    В связи с этим вопрос – что ещё нужно знать?

    Бэкенд вам в любом случае нужен.

    Если я правильно понимаю, Angular, Vue и прочие фреймворки – это только фронтенд.

    Все верно.

    Куда не сунься, везде о веб-разработке говорится, как о разработке именно фронтенда, а также это непременно связано с Node.js (дабы что-то написать на ангуляре, без него никак). Каким боком связан фронтенд с Node.js - я не понимаю, т.к. Node.js - это, по сути, способ запустить JS вне браузера.

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

    Если я хочу запустить приложение в браузере, то зачем мне node? Это всё меня вводит в ступор, я вижу лишь противоречия.

    Вы не путайте. Есть технологии, которые используются в процессе работы приложения и есть технологии, которые используются в процессе разработки приложения. Все эти Gulp, Grunt, Babel, Webpack и прочие - это инструменты разработки. Они ускоряют, упрощают, повышают качество работы. В то время jQuery, Angular, React - это библиотеки и фреймворки, с помощью которых приложение будет работать.

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

    Здесь я лишь могу предположить, что сервер вместо html должен обмениваться данными с приложением посредством json или чего-то ещё.

    Да, JSON, как самый распространенный. Вам нужен фреймворк для бэкенда, на котором можно развернуть REST API. Насколько мне известно большинство современных фреймворов современных языков программирования, которые используются для веб-разработки, это умеют. Я не могу утверждать точно, я работаю в рамках одного языка.

    Всё-таки сервер - это основа любого сетевого приложения, и в первую очередь нужно разработать серверную часть.

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

    Вся прелесть SPA в разделении этих частей. Любая из них может быть заменена на другую без особых последствий. Один бэкенд может обслуживать сайты, мобильные приложения, предоставлять доступ к данным для сторонних партнерских приложений, и все это через единый API.

    Что ещё нужно изучить? Или перечисленных знаний достаточно?

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

    Можно ли не использовать Node.js и, соответственно, npm, если JS (TS) требуется только в браузере? При этом тестирование тоже необходимо.

    Да, вполне. На стороне клиента, к примеру, JS+Angular. А на стороне бэкенда, к примеру, PHP+Laravel. Сейчас очень много языков и еще больше фреймворков под них. Выбирайте то, что для вас проще.
    Ответ написан
    2 комментария
  • Что нужно изучить для разработки современных веб-приложений?

    @Kirill-Gorelov
    С ума с IT
    Если посмотреть на серверную часть, то ей не уделяется внимания ни на сайте Vue, ни на сайте Angular, ни на других, где описывается их функционал. На чём её писать и каким образом состыковать с клиентской частью?

    Дружище, такое ощущение, что ты путаешь бэкенд и фронтенд.
    Бекенд - php, python - серверная часть
    фронтенд - Angular, Vue - клиентская часть
    У тебя еще как-то размытое представление о веб разработке. По крайней мере мне так показалось. Или не размытое, а путаешься!)

    Держи ссылку - https://github.com/zualex/devmap как раз что тебе нежно!
    Ответ написан
    2 комментария
  • Что нужно изучить для разработки современных веб-приложений?

    @denismaster
    Backend - ASP.NET Core \ NodeJS
    Frontend - Angular 4, Vue

    Node.JS на фронтенде нужен для использования модулей и сборки всего воедино. В результате получится набор файлов, не привязанный к Node, предназначенный для браузера.
    Ответ написан
    2 комментария