Está en la página 1de 8

Marco teórico tecnologías a ser utilizadas Java (Lenguaje de programación) Generalidades y Características del lenguaje

Sun Microsystem lider en Servidores para INTERNET, desarrolla JAVA con el fin de eliminar incompatibilidades.(1991)

Fue un proyecto que reboto mucho tiempo por distintos departamentos de SUN, java como un lenguaje de pequeños electrodomésticos.

El mercado inicial de JAVA (a cargo de la filial de Sun Microsystem, FirsPerson Inc.) eran los equipos como microondas, tostadores y fundamentalmente televisión interactiva.

James Gosling, miembro del equipo, con mas experiencia en lenguajes de programación había estado trabajando en su tiempo libre en un lenguaje de programación que el llamo OAK, cuyas bases fueron C++.(1990)

Características

Es simple.

Ofrece toda la funcionalidad de un lenguaje potente, es perecido a C++.

Utiliza Garbage Collector (reciclador de memoria dinámica). No es necesario preocuparse de liberar memoria, el reciclador se encarga de ello, cuando entra en acción permite liberar bloques de memoria muy grandes, lo que reduce la fragmentación de la memoria.

Reduce 50% los errores mas comunes de programación al eliminar características como:

Es orientado a Objetos

Java incorpora la resolución dinámica de métodos, características que deriva del lenguaje Objettive C.

Usa RTTI (Run time type idetification) que define la interacción entre objetos, excluyendo variables de instancias o implementación de métodos.

Modo de organizar sus programas.

Modelamiento de objetos del mundo real.

Es distribuido.

Capacidad de interconexión TCP/IP, existen librerias de rutinas para acceder e interactuar con protocolos como http y ftp.

Java en si no es distribuido, si no que proporciona las librerias y herramientas para que los programas puedan ser distribuidos, es decir, que funcione en varias máquinas, interactuando.

Es de arquitectura Neutral. Java compila su código a un archivo objeto de formato independiente de la arquitectura de la maquina en que se ejecutara.

Ejemplos de APIs

JAVA2D: gráficos 2D y manipulación de imágenes.

Java Media Framework: Elementos críticos en el tiempo, audio, video.

Java Animation: animación de objetos 2D.

Java Telephony: Integración con telefonía.

Java Share: Interacción entre aplicaciones multiusuario.

Java 3D: gráficos 3D y su manipulación.

Es seguro.

Si los byte codes pasan la verificación sin generar ningún mensaje de error, entonces sabemos que:

El código no produce desbordamiento de operando en la pila.

Todos los tipos, los parámetros de todos los códigos de operación son

conocidos y correctos.

No ha ocurrido ninguna conversión ilegal de datos.

Es portable.

Independiente de la plataforma.

Un entero (int) en java, siempre será un entero de 32 bits.

Es multitarea.

Java permite muchas actividades simultáneas en un programa.

Java provee su propio navegador (Hotjava).

Es un sistema federado, el navegador es un coordinador de piezas y cada pieza es responsable de una función. Las piezas se pueden añadir dinámicamente a través de la red.

PHP(Lenguaje de programación)

PHP es un lenguaje de scripting, el cual puede ser embebido dentro de páginas HTML. Gran parte de su sintaxis fue tomada de C, Java y Perl con un par de características específicas propias de PHP. El objetivo del lenguaje es permitir a Desarrolladores Web escribir páginas generadas dinámicamente con rapidez.

A pesar de que PHP 5 fue diseñado con la intención de ser tan compatible como fuese posible con versiones anteriores, hay algunos cambios significativos. Algunos de estos incluyen:

Un nuevo modelo OOP basado en el Zend Engine 2.0

Una nueva extensión que mejora el soporte MySQL

Soporte nativo integrado para SQLite

Una nueva constante de reporte de errores, E_STRICT, para sugerencias en ejecución sobre código.

Una serie de nuevas funciones para simplificar la escritura de código (y reducir la necesidad de escribir sus propias funciones para procedimientos comunes) PHP es el lenguaje de lado servidor más extendido en la web. Nacido en 1994, se trata de un lenguaje de creación relativamente reciente, aunque con la rapidez con la que evoluciona Internet parezca que ha existido toda la vida. Es un lenguaje que ha tenido una gran aceptación en la comunidad de desarrolladores, debido a la potencia y simplicidad que lo caracterizan, así como al soporte generalizado en la mayoría de los servidores de hosting. PHP nos permite embeber su pequeños fragmentos de código dentro de la página HTML y realizar determinadas acciones de una forma fácil y eficaz, combinando lo que ya sabemos del desarrollo HTML. Es decir, con PHP escribimos scripts dentro del código HTML, con el que se supone que ya estamos familiarizados. Por otra parte, y es aquí donde reside su mayor interés con respecto a los lenguajes pensados para los CGI, PHP ofrece un sinfín de funciones para la explotación de bases de datos de una manera llana, sin complicaciones. Podríamos efectuar la quizás odiosa comparación de decir que PHP y ASP son lenguajes parecidos en cuanto a potencia y dificultad si bien su sintaxis puede diferir sensiblemente. Algunas diferencias principales pueden, no obstante, mencionarse:

Apache ServiceMix (Elemento integrador)

Definición:

Un ESB es una plataforma de integración que provee comunicación,

transformación, portabilidad, enrutamiento y segurida de datos, permitiendo la interaccion entre diversas aplicaciones o sistemas de una arquitectura empresarial Apache Service MIX Es un ESB OpenSource que combina la funcionalidad de una arquitectura orientada al servicio y una arquitectura de eventos para crear un ESB empresarial. Características Generales

Entorno Ligero y fácilmente integrable

Es un contenedor Java Business Integration

Provee integración con Spring

Puede ser configurado como servicio de otro ESB

Soporta FTP,File,JMS, smtp, SOAP,TCP,XMPP

Integración con components Apache Camel,CXF,ODE,Drools,Saxion,XQuery entre otros

Motivación:

La gran cantidad de plataformas y tecnologías que se pueden llegar a usar dentro de una misma organización.

La falta de definición de estándares.

Demasiadas conexiones “Punto a punto entre aplicaciones”.

Necesidad de integración.

Objetivo:

Características: ∑ Enrutación basada en contenido ∑ Transformación de mensajes. ∑ Proxy de servicios ∑

Características:

Enrutación basada en contenido

Transformación de mensajes.

Proxy de servicios

Conversión de protocolos

Auditorías y Logs de mensajes

Manejo de excepciones

Seguridad en servicios

Validación, enriquecimiento, transformación y operación de mensajes

Glassfish (Servidor de aplicaciones)

Sun GlassFish TM Enterprise Server es un servidor Java compatible con la plataforma Java TM Enterprise Edition (Java EE) 6 diseñado para desarrollar e implementar aplicaciones de Java EE y servicios web de Java. El uso de este servidor para la producción no supone ningún coste. GlassFish Sun Enterprise Server es gratuito si se utiliza para el desarrollo, la implementación y la redistribución. Si es un cliente interesado en la redistribución, póngase en contacto con el departamento de ventas de Sun OEM para obtener una licencia de redistribución. Las Notas de la versión de Sun GlassFish Enterprise Server v3 contienen información importante sobre Enterprise Server versión v3, como datos acerca de las nuevas funciones, requisitos de hardware y software y los problemas conocidos con sus respectivas soluciones, si están disponibles. Compruebe este documento antes de instalar y configurar su software, y lea este documento antes de empezar a utilizar Sun GlassFish Enterprise Server v3. Consulte este documento con frecuencia para ver la documentación más actualizada.

Compatibilidad con perfiles de Java EE

Java EE 6 introduce el concepto de perfiles. Un perfil es un conjunto de tecnologías y API de Java EE que atienden a comunidades de desarrolladores y tipos de aplicación específicos. Los siguientes perfiles se implementan mediante las distribuciones de Sun GlassFish Enterprise Server v3:

Perfil de plataforma completa. Este perfil se ha diseñado para desarrolladores que requieren el conjunto completo de API de Java EE para el desarrollo de aplicaciones empresariales. El Perfil de plataforma completa se instala al instalar Sun GlassFish Enterprise Server v3. Este perfil también se instala como parte de la instalación del SDK de Java EE 6.

Perfil web. Este perfil contiene tecnologías web que forman parte de la

plataforma completa y está diseñado para desarrolladores que no precisen todo el conjunto de API de Java EE. El perfil web se instala al instalar Perfil web de Sun GlassFish Enterprise Server v3. Este perfil también se instala con SDK del perfil web de Java EE 6. Las versiones de SDK de Java EE 6 están disponibles en la página de descargas de Java EE 6 SDK.

Diseño modular En Sun GlassFish Enterprise Server v3, el código GlassFish está dividido en módulos que proporcionan flexibilidad y un mejor rendimiento del tiempo de ejecución. La arquitectura modular se implementa sobre estándares de OSGi Alliance y permite volver a utilizar módulos de Enterprise Server v3, así como otros módulos. Este cambio de diseño permite usar sólo los módulos necesarios para las aplicaciones implementadas. El tiempo de ejecución se utiliza únicamente para aplicaciones que lo utilizan, y pueden implementarse actualizaciones sin necesidad de realizar una reinstalación completa del sistema. De esa forma se reducen los tiempos de arranque, el consumo de memoria y los requisitos de espacio en disco. El diseño modular ofrece la posibilidad de llevar a cabo las acciones siguientes:

Implementar conjuntos de OSGi

Implementar archivos históricos de bibliotecas de Java (JAR)

Reemplazar la funcionalidad existente con otra implementación

Compatibilidad con lenguajes de secuencia de comandos Para facilitar un rápido desarrollo e implementación de aplicaciones, Sun GlassFish Enterprise Server v3 es compatible con diversos lenguajes de secuencia de comandos. El uso de lenguajes de línea de comandos permite aplicar Enterprise Server más allá de los desarrollos centrados en tecnología Java. Entre los lenguajes de secuencia de comandos compatibles se encuentran:

JRuby y Rails: un lenguaje de secuencia de comandos y una estructura para desarrollar aplicaciones web

Grails: Una estructura de aplicaciones web que saca el máximo partido del lenguaje de programación Groovy y complementa el desarrollo web Java

Jython y Django: una implementación de Java del lenguaje Python y una estructura web para Python y las implementaciones de Python (como, por ejemplo, Jython)

jMaki: Una estructura para crear aplicaciones web Ajax

La compatibilidad con estos lenguajes de secuencia de comandos es posible gracias a componentes que se encuentran disponibles a través de la Herramienta de actualización. Plataformas admitidas Sun GlassFish Enterprise Server v3 requiere un mínimo de 200 MB de espacio libre en disco para instalarse y 100 MB de memoria libre para ejecutarse. La siguiente tabla enumera los sistemas operativos compatibles e incluye el valor mínimo de memoria, la memoria recomendada, el espacio mínimo en disco, el espacio en disco recomendado y la máquina virtual de Java para cada uno de ellos. Tal y como se indica a continuación, Enterprise Server requiere JDK TM versión 6. La versión mínima (y certificada) del software JDK 6 necesaria depende del sistema operativo. Para ver los requisitos específicos de la plataforma, consulte Versión JDK requerida. Tabla 1–2 Sistemas operativos admitidos

Sistema operativo

Memor

Memoria

Espaci

Espacio en

Máqui

ia

recomenda

o en

disco

na

mínima

da

disco

recomenda

virtual

mínim

do

de

o

Java

Sistema operativo Solaris TM

 

Solaris 10 (plataforma SPARC TM )

1 GB

2

GB

250

500

MB de

JDK 6

 

MB de

espacio

32

y 64

espaci

libre

bits

 

o

libre

Solaris 10

1 GB

2

GB

250

500

MB de

JDK 6

(plataforma x86)

 

MB de

espacio

32

y 64

espaci

libre

bits

o

libre

OpenSolaris TM 200

1 GB

2

GB

250

500

MB de

JDK 6

9.06

 

MB de

espacio

espaci

libre

o

libre

Linux

Red Hat Enterprise Linux 5.0

1 GB

2

GB

250

500

MB de

JDK 6

 

MB de

espacio

32

y 64

 

espaci

libre

bits

o

libre

Sistema operativo

Memor

Memoria

Espaci

Espacio en

Máqui

ia

recomenda

o en

disco

na

mínima

da

disco

recomenda

virtual

mínim

do

de

o

Java

Red Hat Enterprise Linux 4.0

1 GB

2

GB

250

500

MB de

JDK 6

 

MB de

espacio

32

bits

 

espaci

libre

 

o

libre

SuSE Linux Enterprise Server

1 GB

2

GB

250

500

MB de

JDK 6

 

MB de

espacio

32

bits

10

espaci

libre

 

o

libre

Ubuntu Linux 8.04

1 GB

2

GB

250

500

MB de

JDK 6

 

MB de

espacio

32

bits

espaci

libre

 

o

libre

Windows

Windows 7

1 GB

2

GB

250

500

MB de

JDK 6

profesional

 

MB de

espacio

32

y 64

espaci

libre

bits

o

libre

Windows XP

1 GB

2

GB

250

500

MB de

JDK 6

Professional SP3

 

MB de

espacio

32

bits

espaci

libre

 

o

libre

Windows 2008

1 GB

2

GB

250

500

MB de

JDK 6

 

MB de

espacio

32

bits

espaci

libre

 

o

libre

Windows Vista

1 GB

2

GB

250

500

MB

JDK 6

Business

 

MB de

 

32

bits

espaci

 

o

libre

Sistema operativo

Memor

Memoria

Espaci

Espacio en

Máqui

ia

recomenda

o en

disco

na

mínima

da

disco

recomenda

virtual

mínim

do

de

o

Java

Mac OS

Mac OS X 10.5 y

1 GB

2 GB

250

500 MB de espacio libre

JDK 6

10.6

MB de

32 bits

espaci

o libre