AngularJS - Arquitectura MVC
Model Vver Controller o MVC, como se le llama popularmente, es un patrón de diseño de software para desarrollar aplicaciones web. Un patrón de controlador de vista de modelo se compone de las siguientes tres partes:
Model - Es el nivel más bajo del patrón responsable de mantener los datos.
View - Es el responsable de mostrar al usuario todos o una parte de los datos.
Controller - Es un código de software que controla las interacciones entre el modelo y la vista.
MVC es popular porque aísla la lógica de la aplicación de la capa de interfaz de usuario y admite la separación de preocupaciones. El controlador recibe todas las solicitudes de la aplicación y luego trabaja con el modelo para preparar los datos que necesita la vista. La vista luego usa los datos preparados por el controlador para generar una respuesta presentable final. La abstracción MVC se puede representar gráficamente de la siguiente manera.
El modelo
El modelo es responsable de administrar los datos de la aplicación. Responde a la solicitud de la vista y a las instrucciones del controlador para actualizarse.
La vista
Una presentación de datos en un formato particular, provocada por la decisión del controlador de presentar los datos. Son sistemas de plantillas basados en scripts como JSP, ASP, PHP y muy fáciles de integrar con la tecnología AJAX.
El controlador
El controlador responde a la entrada del usuario y realiza interacciones en los objetos del modelo de datos. El controlador recibe la entrada, la valida y luego realiza operaciones comerciales que modifican el estado del modelo de datos.
AngularJS es un marco basado en MVC. En los próximos capítulos, veremos cómo AngularJS usa la metodología MVC.