Spa — Это Не Панацея И Не Альтернативный Подход К Веб-Разработке. Часть 1

Цель общественности не в том, чтобы критиковать подход СПА , а показать, какие альтернативы существуют для реализации веб-приложения на основе API. Пожалуйста, обсуждайте только сам подход, его плюсы и минусы.

Я придумал название для этого архитектурного стиля — newDHTML. Насколько это подходит, можно предложить что-нибудь другое.

Итак, newDHTML — это архитектурный стиль разработки веб-приложений; это не фреймворк или библиотека.

Идея возникла как альтернатива SPA по ряду причин, изложенных ниже.

Одностраничное приложение — хороший способ организации, но у него есть следующие недостатки: 1. Это сильно усложняет фронтенд-часть приложения.

Помимо html и UI-логики есть еще роутеры, MVC и прочие вкусности.

2. Поскольку приложение имеет единственную точку входа, существует риск того, что одна ошибка может привести к сбою всего приложения.

3. Дублирование роутеров (по сравнению с классическим подходом) 4. SEO



Идея

Логика MVC остается на стороне сервера.

Ключевая особенность в том, что View возвращает статическую страницу, а вся динамическая часть собирается javascript на стороне клиента.



API-эквивалент веб-приложения

Пример REST API:
Ресурс ПОЛУЧАТЬ ПОЧТА ПОМЕЩАТЬ УДАЛИТЬ
/книги список всех книг Новая книга обновление всех книг удаление всех книг
/книги/1 мы получим книгу обновление книги удаление книги
/книги-индекс возвращает статическую html-страницу
Маршрутизаторы с суффиксом «-index» возвращают статический макет. Затем на этой странице подключаются ресурсы (css, js скрипты и другие).

Далее компоненты js загружают динамические данные через REST API, и пользователь видит конечный результат. API — это веб-приложение; как только вы пишете приложение, вы реализуете API. Таким образом, мы имеем веб-приложение, которое полностью работает через API, но оно многостраничное и не имеет ряда недостатков SPA:

  • Более простая архитектура, каждая страница может иметь свои компоненты, свою логику и вообще работать как отдельный модуль со своей спецификой.

  • В случае ошибки во внешнем интерфейсе сломается максимум одна страница из многих.

  • Ну и другие плюсы, если заметите, пишите.

Во второй части планирую написать о компонентах.

А пока всем спасибо за внимание и удачи! Идея и текст автора.

Теги: #спа #JavaScript #rest #newDHTML #api #JavaScript #HTML #api

Вместе с данным постом часто просматривают:

Автор Статьи


Зарегистрирован: 2019-12-10 15:07:06
Баллов опыта: 0
Всего постов на сайте: 0
Всего комментарий на сайте: 0
Dima Manisha

Dima Manisha

Эксперт Wmlog. Профессиональный веб-мастер, SEO-специалист, дизайнер, маркетолог и интернет-предприниматель.