No estás necesariamente equivocado o correcto. Depende de la función prevista de su sitio y las necesidades de sus usuarios.
El beneficio de un marco como Angular es que todas las páginas y activos se sirven a la vez. Esto significa que:
- El cliente puede navegar a diferentes páginas sin tener que esperar solicitudes adicionales del servidor solo para obtener plantillas de página, y
- El servidor principalmente tiene que preocuparse por servir información en solicitudes de API en lugar de servir páginas enteras
A partir de esto, surgió la Aplicación de una sola página (SPA), en la que se construye toda la aplicación y las páginas se enrutan a través de JavaScript.
- ¿Qué hace el desarrollador front-end? ¿Qué tecnologías debería conocer y en qué aspectos de la aplicación web trabaja?
- ¿Cuál es la forma correcta de aprender Ruby y Ruby on Rails?
- ¿Los Javascript IIFE anónimos permanecen en la pila de memoria después de ser usados?
- Después de aprender HTML, CSS y JavaScript, ¿puedo aprender Angular o React? Si es así, ¿cuál y por qué?
- Tengo una lista de ID que asistieron a una clase y una lista de todas las ID de la clase. ¿Cómo identifico rápidamente las identificaciones que no llegaron a clase?
Como dije, el beneficio es que quita el trabajo del servidor y se lo entrega al cliente.
La desventaja es que elimina el trabajo del servidor y se lo entrega al cliente.
Esto tiene implicaciones en:
- Rendimiento : a menudo es más fácil para el servidor simplemente inyectar información en una plantilla de página y servirla que el JavaScript de su navegador realiza constantemente solicitudes y vuelve a representar la página. El impacto en el rendimiento de la página puede variar según el sistema y la aplicación, pero es especialmente preocupante cuando se trata de navegadores móviles. Los dispositivos móviles tienen relativamente menos recursos disponibles para el navegador, por lo que las páginas pesadas en JavaScript pueden ser un gasto significativo de recursos y batería.
- Seguridad : si carga todo su sitio a través de Angular, eso significa que está enviando las plantillas de página y los activos para todo, incluidas sus áreas seguras, como sus páginas de administrador. Si bien es posible que no tengan acceso a datos seguros a través de la API, podrían robar información y agujeros de seguridad en su aplicación revisando los datos del sitio que han descargado y leyendo la lógica de la página. Si deja que el servidor maneje la representación de la página, no debería tener acceso a esas páginas seguras en primer lugar.
Esa es principalmente la razón por la cual muchas personas abogan en contra de que todo el sitio sea una aplicación de una sola página. Sin embargo, todo depende de la situación. Si tiene una aplicación a la que los usuarios acceden principalmente a través de un navegador de PC, los usuarios esperan una carga de página muy rápida, su servidor tiene mucho tráfico y usted sabe cómo proteger adecuadamente sus páginas contra la intromisión, entonces podría ser mejor para usted construir su sitio como SPA. Evalúa tu situación y toma decisiones basadas en eso.