• Inspiración
  • Tutoriales
  • Bootcamp

En1Mes

  • Inspiración
  • Tutoriales
  • Bootcamp

¿Qué es MVC y por que los programadores de tu aplicación deberían estar ocupándolo?

diagrama del modelo, vista y controlador

¿Qué es MVC?

Entre los programadores y diseñadores de páginas web de vez en cuando se escucha esta curioso acrónimo, MVC.

MVC y los patrones de diseño

MVC es un patrón de diseño, una frase que suena muy bonita pero lo que realmente significa es algo bien simple, solución recurrente. En el mundo del software de vez en cuando una solución a un problema se hace popular y a partir de ese momento empieza a aparecer en libros y se le conoce como un patrón de diseño.

Entre los muchos patrones de diseños que existen hay uno que se ha hecho demasiado famoso en este último tiempo en el ámbito de la programación web, y se llama MVC que consiste en dividir la construcción de un sistema en 3 capas, que reciben los nombres de Modelo, Vista y Controlador.

Pero antes de entrar a explicar en detalle en que consiste cada etapa, sería interesante saber cual es el problema que resuelve este patrón.

El problema.

Cuando se hace un sitio o aplicación web, que puede llegar a contener varias páginas, consultas, e inserciones en bases de datos, lógica de autenticación y en general todo el pack común de cosas que tiene una aplicación como Twitter, Pinterest, Tumblr, Facebook, o incluso la página de la intranet de tu empresa.

En uno de estos sitios web pueden llegar a trabajar decenas de programadores, incluso si fueran pocos, es muy normal que llegue uno nuevo a retomar el trabajo de uno anterior. En ese caso, en el momento que le toque meter mano en el código se va a dar cuenta que no sabe que hace y donde está cada linea de código. Este pobre programador, va a estar viendo una página web en su navegador y cabeceandose contra la pared porque no tiene ni idea que archivo o que línea de código tiene que modificar para poder lograr los cambios que desea.

Pero hay un problema aún mucho más grande, en un sistema sin ninguna estructura aparente, es muy fácil modificar algo y terminar rompiendo decenas de otras cosas.

MVC al rescate.

MVC es una forma de organizar el código de un sitio o una aplicación para ayudar a mantener el orden y estructura de un proyecto.

El modelo.

En MVC tu aplicación se va a separar en 3 capas, la primera es el modelo, que es la capa que maneja las reglas del negocio, y se encarga de cuidar los datos. Cuando se habla de aplicaciones web el modelo es el que se encarga de conectarse con la base de datos y mantener la integridad de ellos.

La vista.

La segunda capa es la vista, esto es lo que ve el usuario, por ejemplo las páginas web, el html, el javascript, el css.

El controller

La tercera capa es la que es difícil de explicar, pero es la que maneja que páginas son accesible y no, y se encarga de rescatar los datos del modelo y luego entregárselo a las vistas, también en este punto se manejan cosas como identificar quién es el.

diagrama del modelo, vista y controlador

modelo, vista y controlador

después de haber dictado el curso introductorio y uno avanzado de ruby on rails decenas de veces creo que la mejor metáfora para transmitir que es el controller es la de televisión.

La metáfora de la televisión

En la metáfora de la televisión, el controller vendría siendo el control remoto, con el puedes cambiar los canales, hacer SAP (Manejo de idiomas) y bloquear los canales de adultos para los niños (autenticación), etc. Las vistas son los programas que ves y el modelo es la programación que te envía tu proveedor de cable.

La lógica es la siguiente.

Un usuario utiliza el control remoto (el controller) para cambiar de canal, al cambiar de canal te “conectas” con el proveedor de cable para que te envíe el programa nuevo, y luego tu simplemente lo disfrutas.

Abr 25, 2014Gonzalo Sánchez
Summary
¿Qué es MVC y por que los programadores de tu aplicación deberían estar ocupándolo?
Article Name
¿Qué es MVC y por que los programadores de tu aplicación deberían estar ocupándolo?
Description
¿Que es el MVC? y ¿por que se escucha tanto entre los programadores?, descubre cual es el rol fundamental que esta cumpliendo este patrón de diseño
Author
Gonzalo Sánchez
Share Button
  • El Autor
  • Últimos Posts

About Gonzalo Sánchez

Emprendedor lean, Ingeniero civil informático dedicado al desarrollo de una mejor web con ruby on rails. Fanático de los números y las métricas y por sobre todo fundador de en1mes.
  • ¿Por qué Twitter fue hecho en Ruby on Rails? - abril 15, 2016
  • Construyendo una landing page en Ruby on Rails desde cero. - febrero 11, 2016
  • Pair programming (de a dos es mejor) - febrero 11, 2016
  • Creando un wordpress en hostinger - abril 18, 2015
  • Login con facebook en rails 4.1 y 4.2 - febrero 3, 2015
  • EL ASSET PATH DE RAILS - enero 26, 2015
  • Entendiendo los objetos en Ruby - enero 21, 2015
  • La verdadera educación Tecnologica - enero 14, 2015
  • Kit Digital del gobierno de Chile - enero 14, 2015
  • ¿Como diseñar un buen Layout para tu página web? - enero 13, 2015
9 years ago 1 Comment Inspiración, Tutoriales8,149
Receta para crear un dropdown de países con ruby on railsEstrategias a considerar antes de construir una aplicación móvil
You Might Also Like
 
Lo que aprendí en el Angelhack
 
Construyendo una landing page en Ruby on Rails desde cero.
Comments: 0
Pingbacks: 1
  1. El programador Full Stack | En1mes
    8 years ago

Deja un comentario Cancelar respuesta

Tags
Ruby on Railsemprendimientos digitalesTutorialesDiseñoHerramientashtml5WordpressrubyLanding PageBases de datosTallereshackathonInspiraciónTipsNitrousHerokuPáginas WebphpCSSsmartphonesRailsGirlsEventosemprendimientos socialeslenguajes de programaciónJavascriptHostingEducaciónGemasprogramaciónCreatividadMySQLemprendimientosCitas inspiradorasExperimentosBenchmarksdiseño responsivoFrameworksInspector de ElementosTwitterlean startupredes socialestecnologíaHackatonUsabilidadmetodologías
Interesado en otros tipos de emprendimiento?

Quieres aprender a importar y exportar productos a todo el mundo? entra aquí

No te pierdas ningún artículo.

2016 © En 1 Mes