MVC es bastante sencillo.
Martin Fowler, quizás, estaría en desacuerdo con esto :
Diferentes personas que leen sobre MVC en diferentes lugares toman diferentes ideas y las describen como 'MVC'.
Hacia adelante...
Cuando creamos un sitio web, todo se junta cuando el cliente envía la solicitud de palabra clave REST al servidor -> el servidor hace coincidir la URL solicitada con la acción del controlador -> que luego llama a los modelos para la recopilación / procesamiento de datos, obtiene el resultado -> y devuelve el resultado al cliente como una página HTML (vista) '.
OK, esto es un poco enredado
MVC, sea lo que sea, es una colección de ideas para implementar interfaces de usuario.
REST es una colección de restricciones arquitectónicas para construir aplicaciones a gran escala.
La web, de la que está hablando aquí, es una aplicación de gestión de documentos gigante creada utilizando la mayoría de esas mismas restricciones.
Las similitudes que está viendo entre los dos se atribuyen incorrectamente o son superficiales.
RESTafarians tienen una comprensión común de HATEOAS , "hipertexto como el motor del estado de la aplicación", y eso debería enviar alarmas sonando a través de su cabeza: ¿por qué una vista sería un motor de estado ? Si cuestionamos la premisa y buscamos evidencia adicional, también podríamos notar dos cosas extrañas.
Primero, que podemos sacar el servidor HTTP completamente de la ecuación cargando el HTML del disco. El navegador está perfectamente satisfecho con esto, excusando algunas variaciones menores en el comportamiento que pueden surgir del cambio en la URL base. Las vistas generalmente no continúan funcionando cuando se han desconectado completamente del modelo y el controlador de esa manera.
Segundo, si observamos cuidadosamente un navegador moderno, notaremos que hay múltiples vistas del HTML. Las vistas múltiples de una vista parecen una idea realmente extraña, pero efectivamente está la presentación principal, con un montón de marcado de texto que responde a los gestos del usuario, y luego está esta cosa de "Vista de origen" que muestra el HTML sin formato y también responde a gestos de usuario. ¡Son tortugas hasta el fondo!
La respuesta al enigma, por supuesto, es que el HTML no es la vista. La colección de widgets en el navegador es la vista, y están en comunicación con el Modelo de Objetos del Documento , que se inicializó leyendo el HTML.
En otras palabras, el HTML es una representación del estado, tal como prometió Roy T. Fielding .
¿Qué pasa si estamos hablando de un servicio web API RESTful puro ...? Igual que antes, pero no hay 'vista'
Más correctamente, igual que antes: no hay vista. El JSON, al igual que el HTML, es una representación del estado, adecuado para cruzar los límites del proceso.
Piense "DTO" o "Mensaje" y sus inferencias serán mucho menos propensas a desviarlo.