Ответ 1
В основном вы смотрите на изоморфное веб-приложение, которое имеет один и тот же код для интерфейса и бэкэнд.
Изоморфный JavaScript
Приложения JavaScript, которые работают как на стороне клиента, так и на стороне сервера. Изоморфные рамки JavaScript являются следующим шагом в эволюции JavaScript-фреймворков. Эти новые библиотеки и фреймворки решают проблемы, связанные с традиционными фреймворками JavaScript.
Я ставлю этот парень объясняет, что намного лучше, что я.
Итак, когда пользователь приходит на страницу, сервер отображает полную страницу с содержимым. Таким образом, он загружается быстрее и не требует дополнительных запросов ajax для загрузки данных и т.д. Затем, когда пользователь переходит на другую страницу, используются обычные методы для приложений с одной страницей.
Итак, ПОЧЕМУ Я ПОМОЧЬ?
- Старые браузеры/Слабые устройства/Отключено Javascript
- SEO
- Некоторые улучшения загрузки страницы.
Старые браузеры/Слабые устройства/Отключено Javascript
Например, IE9 не поддерживает API истории. Итак, для старых браузеров (и если пользователь отключает JavaScript), они просто будут перемещаться по страницам так же, как они делали это в старые добрые времена.
SEO
Google говорит он поддерживает SPA, но SPA вряд ли появятся в лучших результатах поиска Google, не так ли?
Скорость страницы
Как было сказано, первая страница загружается с одним HTTP-запросом и все.
ОК, поэтому
Есть много статей по этому поводу:
- http://nerds.airbnb.com/isomorphic-javascript-future-web-apps/
- http://www.sitepoint.com/isomorphic-javascript-applications/
- https://www.lullabot.com/articles/what-is-an-isomorphic-application
Но СЛЕДУЕТ ЛИ УХОДИТЬ?
Это вам, конечно.
Да, это круто, но для перезаписи/адаптации существующего приложения требуется много работы. И если ваш backend находится в PHP/Ruby/Python/Java/Что бы ни случилось, у меня плохие новости для вас (это не обязательно невозможно, но близко к этому).
Это зависит от веб-сайта, вы можете попытаться собрать некоторую статистику, и если процент пользователей со старыми устройствами мал, это не стоит проблем, так почему бы не...
ПОЗВОНИТЬ СЕМЬЮ
Если вы заботитесь только о пользователях со старыми устройствами, то c'mon, 2015, и это ваша проблема с пользователем, если он использует IE8 для просмотра веб-сайтов с iPod Touch 2. Например, Angular потеряла поддержку IE8 в 1.3 примерно год назад, так почему бы вам просто не предупредить пользователей, что им нужно обновить;)
Ура!