Я читав про SPA та його переваги. Я вважаю більшість із них непереконливими. Є три переваги, які викликають мої сумніви.
Питання: Чи можете ви виступати як захисник SPA та довести, що я помиляюся щодо перших трьох тверджень?
=== ADVANTAGES ===
1. SPA надзвичайно хороший для дуже чуйних сайтів:
Відображення на стороні сервера важко реалізувати для всіх проміжних станів - невеликі стани перегляду не добре відображають URL-адреси.
Програми для однієї сторінки відрізняються своєю здатністю перемальовувати будь-яку частину інтерфейсу користувача, не вимагаючи зворотного переходу сервера для отримання HTML. Це досягається відокремленням даних від подання даних за допомогою шару моделі, який обробляє дані, та рівня перегляду, який читається з моделей.
Що не так у триманні шару моделі для не-SPA? Чи SPA є єдиною сумісною архітектурою з MVC на стороні клієнта?
2. За допомогою SPA нам не потрібно використовувати додаткові запити на сервер для завантаження сторінок.
Так, і скільки сторінок користувач може завантажити, відвідавши ваш сайт? Два, три? Натомість з’являються ще одні проблеми з безпекою, і вам потрібно розділити сторінку входу, сторінку адміністратора тощо на окремі сторінки. У свою чергу це суперечить архітектурі SPA.
3. Чи можуть бути якісь інші переваги? Не чуйте ні про що інше ..
=== DISADVANTAGES ===
- Клієнт повинен включити JavaScript.
- Лише одна точка входу на сайт.
- Безпека.
PS Я працював над SPA та не-SPA проектами. І я задаю ці питання, тому що мені потрібно поглибити своє розуміння. Не означає шкодити прихильникам SPA. Не вимагайте, щоб я прочитав трохи більше про SPA. Я просто хочу почути ваші міркування з цього приводу.