Esto fue más una discusión sobre lo que piensan las personas en estos días sobre cómo dividir una aplicación web.
Estoy acostumbrado a crear una aplicación MVC con todas sus vistas y controladores. Normalmente crearía una vista completa y pasaría esto al navegador en una solicitud de página completa, a menos que hubiera áreas específicas que no quisiera llenar de inmediato y luego usaría eventos de carga de página DOM para llamar al servidor para cargar otras áreas usando AJAX.
Además, cuando se trataba de la actualización parcial de la página, llamaría a un método de acción MVC que devolvería el fragmento HTML que luego podría usar para completar partes de la página. Esto sería para áreas que no quería ralentizar la carga de la página inicial, o áreas que se ajustaban mejor con las llamadas AJAX. Un ejemplo sería para paginación de tabla. Si desea pasar a la página siguiente, preferiría que una llamada AJAX recibiera esa información en lugar de utilizar una actualización completa de la página. Pero la llamada AJAX aún devolvería un fragmento HTML.
Mi pregunta es. ¿Mis pensamientos sobre esto son arcaicos porque vengo de un fondo .net en lugar de un fondo frontal puro?
Un desarrollador front-end inteligente con el que trabajo, prefiere no hacer más o menos nada en las vistas de MVC, y prefiere hacer todo en el front-end. Hasta las llamadas a la API web que pueblan la página. Entonces, en lugar de llamar a un método de acción MVC, que devuelve HTML, preferiría devolver un objeto estándar y usar JavaScript para crear todos los elementos de la página.
La forma de desarrollador front-end significa que cualquier beneficio que normalmente obtengo con la validación del modelo MVC, incluida la validación del lado del cliente, se habrá ido. También significa que los beneficios que obtengo al crear las vistas, con plantillas html fuertemente tipadas, etc., desaparecerán.
Creo que esto significaría que necesitaría escribir la misma validación para la validación frontal y posterior. El Javascript también necesitaría tener muchos métodos para crear todas las diferentes partes del DOM. Por ejemplo, al agregar una nueva fila a una tabla, normalmente usaría la vista parcial MVC para crear la fila, y luego la devolvería como parte de la llamada AJAX, que luego se inyecta en la tabla. Al usar una forma de front end pura, el javascript tomaría un objeto (por ejemplo, un producto) para la fila de la llamada a la API y luego crearía una fila a partir de ese objeto. Crear cada parte individual de la fila de la tabla.
El sitio web en cuestión tendrá muchas áreas diferentes, desde administración, formularios, búsqueda de productos, etc. Un sitio web que no creo que requiera ser diseñado en una sola página.
¿Qué piensan todos sobre esto?
Estoy interesado en saber de los desarrolladores front-end y desarrolladores back-end.