Framework
La palabra inglesa "framework" (marco de trabajo) define, en
trminos
generales,
un
conjunto
estandarizado
de
conceptos,
prcticas y criterios para enfocar un tipo de problemtica particular
que sirve como referencia, para enfrentar y resolver nuevos
problemas de ndole similar.
En el desarrollo de software, un framework o infraestructura digital,
es una estructura conceptual y tecnolgica de soporte definido,
normalmente con artefactos o mdulos de software concretos, que
puede servir de base para la organizacin y desarrollo de software.
Tpicamente, puede incluir soporte de programas, bibliotecas, y un
lenguaje interpretado, entre otras herramientas, para as ayudar a
desarrollar y unir los diferentes componentes de un proyecto.
Representa una arquitectura de software que modela las relaciones
generales de las entidades del dominio, y provee una estructura y
una especial metodologa de trabajo, la cual extiende o utiliza las
aplicaciones del dominio.
Plataforma, entorno, marco de trabajo). 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 de programas.
Los frameworks permiten:
* Facilitar el desarrollo de software.
* Evitar los detalles de bajo nivel, permitiendo concentrar ms
esfuerzo y tiempo en identificar los requerimientos de software.
Ejemplos de frameworks
Struts:
Es la herramienta de soporte para el desarrollo de aplicaciones
Web bajo la plataforma J2EE.
Proyecto independiente conocido como Apache Struts.
Su carcter de software libre y su compatibilidad con todas
las plataformas en las que Java Entreprise est disponible.
ICEfaces:
Implementacion de JSF que ademas de traer todo un set de
componentes de interfaz de usuario rico y potente.
Crea aplicaciones web 2.0 de forma facil y muy potentes.
Sus componentes son 100% Ajax lo que les permite realizar lo
qu ellos llama partial submit.
JavaFX:
Productos de Sun Microsystems para la creacin de Rich
Internet Applications (RIAs).
Tiene caractersticas y capacidades de aplicaciones de
escritorio, incluye aplicaciones multimedia interactivas.
Incluye tecnologias JavaFX Script y JavaFX Mobile.
JavaFX compite con Flash de Adobe, y Silverlight de Microsoft
por el espacio que ya ocupan.
JavaServer Faces (JSF):
Tecnologa y framework para aplicaciones Java basadas en web
que simplifica el desarrollo de interfaces de usuario en
aplicaciones Java EE.
Usa JavaServer Pages (JSP) como la tecnologa que permite
hacer el despliegue de las pginas.
Desarrollada por la Java Community Process como JSR 127.
Java Persistence API (API):
Persistencia desarrollada para la plataforma Java EE e incluida
en el estndar EJB3.
Unifica la manera en que funcionan las utilidades que proveen
un mapeo objeto-relacional.
El objetivo es no perder las ventajas de la orientacin a objetos
al interactuar con una base de datos.