FrameWork es un concepto sumamente genérico, se refiere a “ambiente de trabajo, y ejecución”, por ejemplo “.Net” es considerado un “framework” para desarrollar aplicaciones (Aplicaciones sobre Windows). En general los framework son soluciones completas que contemplan herramientas de apoyo a la construcción (ambiente de trabajo o desarrollo) y motores de ejecución (ambiente de ejecución).
Siguiendo con el ejemplo: “.Net” ofrece el “Visual Studio .net” (ambiente construcción o desarrollo) que le permite a lo desarrolladores construir aplicaciones, y su motor es el “.Net framework” que permite ejecutar dichas aplicaciones. El motor de “.net” es una anexo al sistema operativo (un componente que se instala sobre el sistema operativo), y que ahora viene incluido en la mayoría de los sistema operativos de Microsoft.
FrameWork puede ser algo tan grande como “.NET” o Java (también es un framework), pero también el concepto se aplica a ámbitos mas específicos, por ejemplo; dentro de Java en el ámbito especifico de aplicaciones Web tenemos los framework: Struts, “Java Server Faces”, o Spring. Estos frameworks de Java en la practica son conjuntos de librerías (API’s) para desarrollar aplicaciones Web , más librerías para su ejecución (o motor), y más un conjunto de herramientas para facilitar esta tarea (debuggers, ambientes de desarrollo como Eclipse, etc).
Otros ejemplos de frameworks para ámbitos específicos:
- Ámbito: Webservices => FrameWork: Axis.
- Ámbito: Interfaz de Usuario Web Dinámica => FrameWork: Ajax – DWR
- Ambito: Procesos de Negocio => BPMS (WebSphere, AquaLogic, o Oracle)
Por eso antes se debe acotar que ámbito se desea “apoyar” con un FrameWork.
El ámbito más común es el de desarrollo de aplicaciones o sistemas (genérico), bajo el cual algunos buenos ejemplos de Framework sobre Java son:
- Spring en combinación con Eclipse (eclipse es el equivalente a Visual Studio .NET pero para Java)
- Struts en combinación con Eclipse.
Las anteriores se recomiendan porque son las mas “estándares”, es decir los más usados, y por lo tanto se encuentra un montón de documentación e información al respecto, además si se buscan proveedores que manejen esas tecnologías, se van a poder encontrar fácilmente, y por ser tecnologías que están en “boga” también existen mas herramientas e implementaciones, que van a facilitar el desarrollo de aplicaciones. Por otro lado son tecnologías abiertas, es decir. funcionan prácticamente sobre cualquiera HW y Sistema Operativo, y en esta caso si hablamos de aplicaciones Web, funcionan sobre cualquier Servidor de Aplicaciones conocido (IBM WebSphere, BEA WebLogic, o JBoss). Y en cuanto a costos prácticamente no hay costos de licencias: Spring, Struts, y Eclipse no tienen costos de licencias.
Y si no se maneja Java, y se viene de la escuela de Visual Basic la solución es
- Net en combinación con “Visual Studio .net”
Referencias:
- Spring ( http://www.springframework.org/ )
- Struts ( http://struts.apache.org/ )
- .Net (http://msdn2.microsoft.com/es-mx/netframework/default.aspx )
- Axis (http://ws.apache.org/axis/ )
- Ajax – DWR (http://getahead.org/dwr)
- BPMS (http://soaagenda.com/journal/articulos/que-es-bpm-que-es-bpms/ )
Leave a Reply
You must be logged in to post a comment.
![[StumbleUpon] este articulo](http://www.stumbleupon.com/images/stumbleit.gif)