I’ve read about SPA and it advantages. I find most of them unconvincing. There are 3 advantages that arouse my doubts.
Question: Can you act as advocate of SPA and prove that I am wrong about first three statements?
=== ADVANTAGES ===
1. SPA is extremely good for very responsive sites:
Server-side rendering is hard to implement for all the intermediate
states – small view states do not map well to URLs.Single page apps are distinguished by their ability to redraw any part
of the UI without requiring a server roundtrip to retrieve HTML. This
is achieved by separating the data from the presentation of data by
having a model layer that handles data and a view layer that reads
from the models.
What is wrong with holding a model layer for non-SPA? Does SPA the only compatible architecture with MVC on client side?
2. With SPA we don’t need to use extra queries to the server to download pages.
Hah, and how many pages user can download during visiting your site? Two, three? Instead there appear another security problems and you need to separate your login page, admin page etc into separate pages. In turn it conflicts with SPA architecture.
3.May be any other advantages? Don’t hear about any else..
=== DISADVANTAGES ===
- Client must enable javascript.
- Only one entry point to the site.
- Security.
P.S. I’ve worked on SPA and non-SPA projects. And I’m asking those questions because I need to deepen my understanding. No mean to harm SPA supporters. Don’t ask me to read a bit more about SPA. I just want to hear your considerations about that.