Ensayo

Solo disponible en BuenasTareas
  • Páginas : 5 (1037 palabras )
  • Descarga(s) : 0
  • Publicado : 14 de marzo de 2011
Leer documento completo
Vista previa del texto
Conceptos de Framework
Desde el punto de vista del desarrollo de software, un framework es una estructura de soporte definida, en la cual otro proyecto de software puede ser organizado y desarrollado.

Los frameworks suelen incluir:
* Soporte de programas.
* Bibliotecas.
* Lenguaje de scripting.
* Software para desarrollar y unir diferentes componentes de un proyecto de desarrollo deprogramas.

Los frameworks permiten:
* Facilitar el desarrollo de software.
* Evitar los detalles de bajo nivel, permitiendo concentrar más esfuerzo y tiempo en identificar los requerimientos de software.

Siendo muy simple, es un esquema (un esqueleto, un patrón) para el desarrollo y/o la implementación de una aplicación. Sí, es una definición muy genérica, pero también puede serlo un framework:sin ir más lejos, el paradigma MVC (Model-View-Controller) dice poco más que "separa en tu aplicación la gestión de los datos, las operaciones, y la presentación". En el otro extremo, otros frameworks pueden llegar al detalle de definir los nombres de ficheros, su estructura, las convenciones de programación, etc.
Pongamos un ejemplo: una aplicación web que utilice Java como lenguaje deprogramación puede implementarse de multitud de formas, mediante servlets y JSPs. Hay algunas convenciones que es necesario seguir, como usar un fichero de configuración web.xml, pero el programador sigue sin tener un patrón claro a seguir para la creación de servlets, clases, JSPs, etc.
En una primera estandarización, la utilización de una arquitectura MVC aconseja que separemos la lógica de laaplicación (en los servlets) de la presentación (usando JSPs); en concreto, no sería correcto codificar lógica de aplicación o accesos a base de datos dentro de los JSP.
Un paso más allá: utilizando Faces como framework, la estructura de la aplicación queda todavía más definida: un único servlet (FacesServlet) va a controlar el flujo de la aplicación; además, el uso de un fichero concreto(faces-config.xml) permite crear la navegación de la aplicación, definir los objetos (beans) pasados como parámetros, etc., todo ello sin necesidad de codificarlo en Java o JSP.
Los frameworks no necesariamente están ligados a un lenguaje concreto, aunque sea así en muchas ocasiones. En el cada vez más popular Ruby on Rails, 'Ruby' es el lenguaje de programación y 'Rails' el framework; por otro lado, JavaServerFaces está orientado a desarrollos en Java. Sin embargo, nada impide definir el mismo framework para lenguajes diferentes: por ejemplo, existe un framework llamado Biscuit cuyo objetivo es prácticamente convertirse en un "PHP on Rails". Eso sí, cuanto más detallado es el framework, más necesidad tendrá de ceñirse a un lenguaje concreto.
También es posible que el framework defina una estructurapara una aplicación completa, o bien sólo se centre en un aspecto de ella. Siguiendo con los ejemplos, Ruby on Rails ofrece un marco para el desarrollo completo de una aplicación web, mientras que JavaServer Faces está más orientado a la interfaz de usuario.
¿Qué ventajas tiene utilizar un 'framework'?
Las que se derivan de utilizar un estándar; entre otras:
* El programador no necesitaplantearse una estructura global de la aplicación, sino que el framework le proporciona un esqueleto que hay que "rellenar".
* Facilita la colaboración. Cualquiera que haya tenido que "pelearse" con el código fuente de otro programador (¡o incluso con el propio, pasado algún tiempo!) sabrá lo difícil que es entenderlo y modificarlo; por tanto, todo lo que sea definir y estandarizar va a ahorrartiempo y trabajo a los desarrollos colaborativos.
* Es más fácil encontrar herramientas (utilidades, librerías) adaptadas al framework concreto para facilitar el desarrollo.
En conclusión
La utilización de un framework en el desarrollo de una aplicación implica un cierto coste inicial de aprendizaje, aunque a largo plazo es probable que facilite tanto el desarrollo como el mantenimiento....
tracking img