Julio 22nd, 2008

Modelo Vista Controlador

Posiblemente, si te dedicas a la programación, habrás oido hablar del Modelo Vista Controlador (MVC), ese mismo que tus profesores te insistían en usar tanto. El objetivo de este tipo de modelos es de intentar repetirse lo menos posible y de tenerlo todo organizado o sea hacer una distinción entre la lógica de toda la aplicación y presentación.

Los Fundamentos básicos del MVC son los siguientes:

  • Modelo: Esta sirve como representación específica de toda la información con la cual el sistema va a trabajar. La lógica de datos nos puede llegar a asegurar la integridad de ellos y nos permitirá derivar nuevos datos. ¿Como lo hace?  Pues , no permitiendonos comprar un número de unidades negativas, y también calculando si hoy puede ser el cumpleaños del usuario/a o también los totales, impuestos o importes en un sistema de venta.
  • Vista: Presenta el modelo con el que va a interactuar el usuario, más conocida como interfaz.
  • Controlador: El controlador responde más bien a eventos, normalmente son acciones que el usuario invoca, implica cambios en el modelo y también en la vista (interfaz).

¿Cuáles son los origenes del Modelo Vista Controlador?

Buscando un poco de información historica, podemos decir que este fue descrito por primera vez en 1979 por Trygve Reenskaug (hace ya basante tiempo, para el sector que tratamos), trabajador de Smalltalk, en unos laboratorios de gran investigación de Xerox.

La implementación del modelo fue descrita en este documento.

Frameworks MVC

Los MVC cumplen perfectamente el fin particular de cualquier frameworks, (una estructura bien definida que da soporte a un proyecto web también nos ayuda a que nuestro proyecto sea organizado y bien desarrollado).
Diagrama de Flujo de un framework MVC

Modelo Vista Controlador
Modelo Vista Controlador

1. El index.php nos inicializa el nucleo de nuestra aplicación.
2. El enrutador nos examina nuestra petición HTTP y nos ayuda a determinar que se debe de hacer.
3. Si existe, la cache nos devuelve nuestro archivo HTML sin necesidad de pasar por el sistema , ahorrandos la carga que esto nos conlleva.
4. La Seguridad, ya que antes de que se cargue el controlador se filtran los datos enviados para que estos puedan resultar fiables.
5. El controlador nos carga el modelo, librerias, helpers, plugins y todos los demás recursos necesarios para satisfacer nuestra petición.
6. Finalmente, cuando la Vista está renderizada, esta es enviada al navegador, encontes si la cache se encuentra habilitada, se almacena el resultado para la próxima ocación que la URL sea servida.

Marzo 7th, 2008

.301 Cambio de dominio

neleste.com

Pues por fín, neleste ha dejado atrás el .uni.cc, justo cuando habíamos conseguido el pagerank 3, aunque no es un tema que me preocupe. Gracias a las redirecciones por error 301 conseguiremos transfirlo en unos meses al nuevo www.neleste.com

Noviembre 7th, 2007

Ruby on Rails Vs PHP

Hoy en el trabajo me plantee un comparación Ruby on Rails Vs PHP. Buscando por internet, llegué a una conclusión, no podemos comparar un lenguaje de programación con un framework y un lenguaje de programación. La propia naturaleza de PHP como un lenguaje extremadamente liberal, no lo ata con ninguna tecnología extra. Sin embargo, la mejora del modelo de OOP en PHP5 trajo aparejado un número importante de Frameworks (Cake, PRADO, Symfony, etc.) que se van agregando al lote del Zend Framework. Por eso, las comparaciones serían PHP On Zend Framework vs. Ruby On Rails o PHP on Cake vs. Ruby On Rails, por ejemplo.

Andi Gutmans, tampoco considera que se pueda hacer la comparación, pero dice algo interesante al respecto “Sentimos que PHP con Zend Framework es superior a RoR, y mientras otras personas lo vean de otra forma en cuanto a sus funcionalidades, definitivamente significa que Ruby estuvo siendo mejor publicitado. El diseño ingenioso del sitio de RoR y el marketing viral usado por 37signals le dio a RoR un mejor boca a boca que a PHP. Afortunadamente, esto ayuda a elevar la imagen de Zend y a incitar aun más el uso de su Framework.”

Fuente de apoyo |Maestros del Web