Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Javier J. Gutirrez.
javierj@lsi.us.es
1. Qu es un framework Web?.
El concepto framework se emplea un muchos mbitos del desarrollo de sistemas
software, no solo en el mbito de aplicaciones Web. Podemos encontrar frameworks
para el desarrollo de aplicaciones mdicas, de visin por computador, para el desarrollo
de juegos, y para cualquier mbito que pueda ocurrrsenos.
En general, con el trmino framework, nos estamos refiriendo a una estructura
software compuesta de componentes personalizables e intercambiables para el
desarrollo de una aplicacin. En otras palabras, un framework se puede considerar como
una aplicacin genrica incompleta y configurable a la que podemos aadirle las ltimas
piezas para construir una aplicacin concreta.
La mayora, por no decir todos, de los framewroks para Web implementan este
patrn. Una aplicacin de este patrn en entornos Java para programacin Web es lo
que se conoce con el nombre de arquitectura model 2.
4. Caractersticas.
A continuacin enunciamos una serie de caractersticas que podemos encontrar
en prcticamente todos los frameworks existentes.
Abstraccin de URLs y No es necesario manipular directamente las URLs ni las
sesiones, el framework ya se encarga de hacerlo.
sesiones.
Incluyen las herramientas e interfaces necesarias para
integrarse con herramientas de acceso a datos, en BBDD,
XML, etc..
La mayora de frameworks implementa una serie de
Controladores.
controladores para gestionar eventos, como una
introduccin de datos mediante un formulario o el acceso a
una pgina. Estos controladores suelen ser fcilmente
adaptables a las necesidades de un proyecto concreto.
Autentificacin y control Incluyen mecanismos para la identificacin de usuarios
Acceso a datos.
de acceso.
Internacionalizacin.
Separacin entre diseo y
contenido.
5. Un ejemplo: Struts
El framwrok open-source Struts ha sido desarrollado en Java mediante servlets y
est basado en el Modelo 2, el cual es una variante del patrn MVC.
6. URLs.
Cocoon
Java Server Faces
JetSpeed
Maverick
Struts
Tapestry
Wicket
http://cocoon.apache.org/
http://java.sun.com/j2ee/javaserverfaces/index.jsp
http://portals.apache.org/jetspeed-2/
http://mav.sourceforge.net/
http://struts.apache.org/
http://jakarta.apache.org/tapestry/
http://wicket.codehaus.org/