viernes, 16 de septiembre de 2011

Desarrollo MVC

En esta oportunidad, me interesa hablar sobre el desarrollo web usando la arquitectura MVC.

A la hora de implementar un sistema, muchas dudas comienzan a surgir. Dudas como, qué colores usar, como realizar "x" funcionalidad, habrán maneras sencillas de hacer eso?, etc. Basado en mi humilde experiencia desarrollando sistemas, debo confesarles que la implementación de sistemas "a mano", eventualmente morirá. Sí, morirá.

Las tecnologías han avanzado de manera drástica y con el fin de, entre otras cosas,  facilitar procesos que otrora se daban por complicados, o quizás impredecible su culminación a nivel de tiempo. 

Por otro lado, es verdad, la preparación previa a nivel de conocimientos, herramientas, etc. que sepamos manejar  es vital en el proceso de desarrollo de sistemas de distintas características. Sin embargo, en la medida  que existan formas, procesos, reglas, y plataformas que nos permitan conseguir los objetivos que nos planteamos a la hora de desarrollar un sistema, pues mejor!!


                                                           Figura 1.1 Diseño MVC
Aquí es donde entra en juego la arquitectura MVC para desarrollos web (aunque no solo es para la web, se puede fácilmente usar en otros ambientes). Viene de las siglas "Modelo"-"Vista"-"Controlador", es una arquitectura que simplemente "agiliza" a nivel de:

  • Estructuración de sistemas
  • Manejo de información en distintos formatos
  • Modularización
  • Escalabilidad 
  • Mantenimiento
  • Seguridad
  • Productividad
  • Todas las anteriores
Para hacer uso de esta arquitectura de diseño, es neecsario que el lenguaje en el que deseas programar tenga lo que comúnmente se le ha llamado Marco de Desarrollo (framework) basado en principio en tu lenguaje de preferencia. Además, también es necesario que entiendas a la perfección como funciona el negocio, la figura 1.1 está dispuesta 

¿Cuales son los frameworks que existen actualmente?

Hay una gran cantidad en el mercado. Mencionaré algunos, para que tengas una idea:

  • JSP:                   Struts,Spring
  • ASP.NET:         ASP.NET MVC 2, ASP.NET MVC 3,  ASP.NET MVC 4
  • RUBY:              Ruby On Rails (ROR)
  • PYTHON:         Django
  • PHP                  CAKEPhp, Code Igniter, Symfony

Digamos que estos son los que mas han sonado y han sobresalido del resto... Personalmente he tenido la oportunidad de trabajar con os que ofrece ASP.NET, RUBY y PHP y Struts, los cuales considero que son reamente útiles, obviando las virtudes y defectos de cada uno. Recomiendo ampliamente RoR, ASP.NET MVC 3 ( Estoy trabajando actualmente con la versión 4, luego les cuento como me va :) ) y SYMFONY.

Cualquier duda, consulta, opinion, sugerencia, crítica,etc, no duden en hacerla! seguiré con mi nueva onda de escribir sobre tecnologías, desarrollos, funcionalidades, etc.





No hay comentarios: