Переходим ли мы назад с использованием инфраструктуры JavaScript MVC (MVVM), например Backbone.js, Angular и т.д.?

JavaScript-структуры MVC, такие как Backbone.js, Angular, Ember.js и т.д., в наши дни являются яростью. Я понимаю, что они отлично подходят для предотвращения спагетти-кода и всего, но я действительно не понимаю, почему они сняли, как они.

После того, как все эти годы, убедившись, что сайты доступны с использованием таких вещей, как прогрессивное улучшение, такого рода вещи не работают, когда JavaScript отключен. Посмотрите https://app.getblimp.com/. Это отличное приложение, но все это бесполезно, если JS отключен. Помните много лет назад, когда Target был подан в суд на миллион долларов, потому что их сайт был недоступен?

Другое дело, как HTML настолько интегрирован в JS. Что бы ни случилось, чтобы разделить HTML на разметку, CSS раздельный для презентации и JS для поведения? Почему все эти вещи должны обрабатываться сервером, выполняемым с помощью JavaScript??

Может кто-нибудь указать, почему структура JavaScript MVC будет использоваться в традиционной серверной MVC-инфраструктуре, например PHP Zend, Ruby on Rails или Python?

Я просто не понимаю!

Ответ 1

Если кто-то отключает JavaScript, весь Интернет будет ломаться для этого пользователя. Таким образом, нет, BackboneJS и другие фреймворки, такие как Angular и Ember, продвигают нас вперед, принимая то, что раньше было языком браузера, зарезервированным для фрагментов и глупых анимаций, и позволяет нам организовывать его дружелюбным образом для масштабируемого удобного для пользователя Приложения.

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