Home Assistant Fácil

Curso de Home Assistant y domótica

  • Blog
  • Soy un pardillo
  • Podcast
  • Curso Arduino
  • Curso Domótica
  • Acceder
Usted está aquí: Inicio / Podcast / 19. Patrón Modelo Vista Controlador

19. Patrón Modelo Vista Controlador

Luis del Valle Hernández

modelo-vista-controlador

Ya vamos por el capítulo 19 y hoy veremos que es el patrón de arquitectura MVC (Modelo Vista Controlador). Se trata de un patrón muy extendido entre programadores en entorno web y en aplicaciones nativas, que nos permite separar las capas de presentación, lógica y acceso a datos. Es fundamental para reutilizar, estructurar y ordenar el código en una aplicación.

Pero antes de nada como siempre, el formulario, mandarnos vuestras sugerencias, quejas o peticiones y la lista de distribución para que os suscribáis, así podréis estar al día en todo lo que hablamos en programarfacil.com.

Como ya hemos comentado con anterioridad MVC es un patrón muy extendido entre los programadores de diferentes tecnologías. Es fundamental para tener un código legible y estructurado. Cuando comenzamos a desarrollar una aplicación, nunca sabemos hasta donde va a llegar su propósito, es fundamental que desde un principio tengamos claro cómo estructurar nuestro código. Si no lo hacemos será muy complicado aplicar cualquier patrón en mitad del proyecto y, creerme, os será muy útil en muchos proyectos.

Si que es cierto que este tipo de patrones pretenden ser una guía y no son estrictos en su uso. Cada programador puede adaptar su manera de programar a cualquier patrón conocido o simplemente crear uno propio. No hay que volverse loco con toda la documentación que hay al respecto, simplemente tenemos que ser muy organizados y lo más importante saber cual el objetivo de nuestro proyecto.

La vista

La vista es el módulo de la aplicación que interactúa con el usuario. Recibe los datos, ejecuta eventos y  muestra la información que recibe del controlador. En la programación web forma parte del Front-end y normalmente está programado en HTML, JavaScript y CSS. Aplicando esta arquitectura nos resultará mas o menos sencillo, dependerá de cómo programe el desarrollador, cambiar cualquier elemento de la vista para utilizar otra tecnología, cambiar el diseño, añadir módulos, etc…

El controlador

El controlador es el enlace entre la vista y el modelo. Por un lado recibe la información y eventos que envía la vista validando la información. Por otro lado, se pondrá en contacto con el modelo para transmitir la información susceptible de ser almacenada en algún sistema de almacenamiento de datos. Por norma general en esta capa es donde se implementa la lógica de negocio aunque seguramente veréis proyectos donde parte de la lógica está implementada en el modelo e incluso en la vista.

El modelo

Aquí es donde encontramos la estructura de nuestros datos, las clases y entidades, en definitiva, el modelo de datos. Digamos que esta capa es la que nutre a la vista y al controlador de la información tanto a nivel de estructura como a nivel de datos. En esta capa se produce la comunicación con la base de datos. Si lo pensáis bien imaginaros que accedéis a la base de datos desde las tres capas y mañana, por lo que sea, se decide que el motor de base de datos pasa de MySQL a SQL Server, algo nada descabellado. Si vosotros habéis seguido el patrón MVC simplemente tendréis que tocar la capa de acceso a datos, el modelo, mientras que si habéis accedido a esa base de datos desde diferentes capas, tendréis que tocar todas y cada una de ellas. El tema se puede complicar mucho. En esta capa se suelen utilizar los ORM, esto hace que sea más fácil todavía migrar de un motor de base de datos a otro, en algunos casos con solo cambiar una línea de código es suficiente.

Por último deciros que este patrón no solo se utiliza en el desarrollo web. Para aplicaciones de escritorio para Windows tenemos un patrón similar que se llama MVVM (Model View View-Model). Es un patrón que se utiliza con las aplicaciones realizadas en WPF. Uno de los frameworks más famosos que se utilizan para aplicar este patrón con Visual Studio es MVVM Light Toolkit.

Recurso del día

filezilla-project.org

Os presentamos, si alguno no lo conocéis, el Filezilla. Se trata de un software (cliente FTP) que nos permite subir archivos a nuestro sitio web, ya sea código HTML, CSS, JavaScript, PHP, ASP, etc… o imágenes, audio, vídeo o documentos. Es un software Open Source (código libre), gratuito y muy sencillo de usar. Permite conexiones seguras y guardar las conexiones que más utilizamos. Sin duda alguna es una herramienta indispensable para cualquier desarrollador web.

Pues hasta aquí el programa de hoy os agradecemos todas las valoraciones que habéis dejado en iTunes, ivoox y Spreaker nos vemos en el siguiente capítulo.

home assistant 2026.7

Automatizaciones Home Assistant 2026.7: por fin hablan en humano

¿Cuántas veces te has sentado delante del ordenador para hacer una triste automatización y has acabado queriendo tirar el teclado por la ventana? Eso … [+ info...]

comparativa home assistant y homey

Comparativa Home Assistant y Homey: qué sistema domótico comprar

Comparativa Home Assistant y Homey: si estás pensando en montar una casa inteligente de verdad, tarde o temprano te vas a encontrar con esta duda. ¿Me … [+ info...]

camaras de seguridad para casa

Cámaras de seguridad para casa: 5 pilares para no caer en la trampa del Prime Day

Llevas semanas pensando en poner cámaras de seguridad para casa y llega el Prime Day. Entras en Amazon, buscas y aparecen miles de resultados: WiFi, … [+ info...]

Copyright © 2026 · Programar Fácil · Aviso legal

Utilizamos cookies para ofrecerte la mejor experiencia en nuestra web.

Puedes aprender más sobre qué cookies utilizamos o desactivarlas en los .

Resumen de privacidad

Esta web utiliza cookies para que podamos ofrecerte la mejor experiencia de usuario posible. La información de las cookies se almacena en tu navegador y realiza funciones tales como reconocerte cuando vuelves a nuestra web o ayudar a nuestro equipo a comprender qué secciones de la web encuentras más interesantes y útiles.

Cookies estrictamente necesarias

Las cookies estrictamente necesarias tiene que activarse siempre para que podamos guardar tus preferencias de ajustes de cookies.

Cookies de terceros

Esta web utiliza Google Tag Manager para recopilar información anónima tal como el número de visitantes del sitio, o las páginas más populares.

Dejar esta cookie activa nos permite mejorar nuestra web.