Sie sind auf Seite 1von 13

/ 9

Download this Document for Free

Java, su historia, ediciones, versiones y caractersticas como plataforma y lenguaje de programacin


Publicado por Gastn el 10/10/2007 en Java - Nivel Bsico

Resmen
Este artculo pretende ser una lectura sobre los conceptos bsicos, la historia y las diferentes versiones y ediciones disponibles de Java. Intenta acercar al programador, y al interesado en estas tecnologas, a conocer con mayor profundidad lo que representa el mundo de Java.

Tabla de contenidos
Qu es Java? Caractersticas de Java El recolector de basura La plataforma virtual Java El lenguaje de programacin Java Otras observaciones Cmo surge Java? Historia de la tecnologa Java Primeros proyectos en que se aplic Java Resurgimiento de Java Java en cdigo abierto Cules son las diferencias entre JRE y SDK? Qu ediciones de Java tenemos a nuestra disposicin? Versiones de Java IDE's

Qu es Java?
Java es toda una tecnologa orientada al desarrollo de software con el cual podemos realizar cualquier tipo de programa. Hoy en da, la tecnologa Java ha cobrado mucha importancia en el mbito de Internet gracias a su plataforma J2EE. Pero Java no se queda ah, ya que en la industria para dispositivos mviles tambin hay una gran acogida para este lenguaje. La tecnologa Java est compuesta bsicamente por 2 elementos: el lenguaje Java y su plataforma. Con plataforma nos referimos a la mquina virtual de Java (Java Virtual Machine). Java tambin es un lenguaje de programacin. En la actualidad es un lenguaje muy extendido y cada vez cobra ms importancia tanto en el mbito de Internet como en la informtica en general. Est desarrollado por la compaa Sun Microsystems con gran dedicacin y siempre enfocado a cubrir las necesidades tecnolgicas ms punteras.

Caractersticas de Java
Una de las principales caractersticas por las que Java se ha hecho muy famoso es que es un lenguaje independiente de la plataforma. Eso quiere decir que si hacemos un programa en Java podr funcionar en cualquier ordenador del mercado. Es una ventaja significativa para los desarrolladores de software, pues antes tenan que hacer un programa para cada sistema operativo, por ejemplo Windows, Linux, Apple, etc. Esto lo consigue porque se ha creado una Mquina de Java para cada sistema que hace de puente entre el sistema

operativo y el programa de Java y posibilita que este ltimo se entienda perfectamente. La independencia de plataforma es una de las razones por las que Java es interesante para Internet, ya que muchas personas deben tener acceso con ordenadores distintos. A su vez, Java est desarrollndose incluso para distintos tipos de dispositivos adems del ordenador como mviles, agendas y en general para cualquier "cosa" que se le ocurra a la industria. Lo que favoreci el crecimiento y difusin del lenguaje Java es su capacidad de que el cdigo funcione sobre cualquier plataforma de software y hardware. Esto significa que nuestro mismo programa escrito para Linux puede ser ejecutado en Windows sin ningn problema. Adems es un lenguaje orientado a objetos que resuelve los problemas en la complejidad de los sistemas, entre otras. Esto agiliza el proceso de desarrollo substancialmente, suponiendo que usted va a lanzar un producto para diversos sistemas operativos(Windows,Linux,AIX,Solaris) y procesadores( Sparc, x86(Intel), HP-UX , Alpha )... el realizarlo para cada combinacin posible sera una magna obra de Ingeniera, si utiliza Java puede concentrar sus esfuerzos unicamente en un producto, y debido a que existen diversos JRE: Para Linux, Solaris, Windows y otros sistemas operativos, deja los detalles especficos de Plataforma (JVM) al JRE y concentra sus esfuerzos en un solo producto.

El recolector de basura
Un argumento en contra de lenguajes como C++ es que los programadores se encuentran con la carga aadida de tener que administrar la memoria solicitada dinmicamente de forma manual: En C++, el desarrollador puede asignar memoria en una zona conocida como heap (montculo) para crear cualquier objeto, y posteriormente desalojar el espacio asignado cuando desea borrarlo. Un olvido a la hora de desalojar memoria previamente solicitada puede llevar a una fuga de memoria, ya que el sistema operativo seguir pensando que esa zona de memoria est siendo usada por una aplicacin cuando en realidad no es as. As, un programa mal diseado podra consumir una cantidad desproporcionada de memoria. Adems, si una misma regin de memoria es desalojada dos veces el programa puede volverse inestable y llevar a un eventual cuelgue. No obstante, se debe sealar que C++ tambin permite crear objetos en la pila de llamadas de una funcin o bloque, de forma que se libere la memoria (y se ejecute el destructor del objeto) de forma automtica al finalizar la ejecucin de la funcin o bloque. En Java, este problema potencial es evitado en gran medida por el recolector automtico de basura (o automatic garbage collector). El programador determina cundo se crean los objetos y el entorno en tiempo de ejecucin de Java (Java runtime) es el responsable de gestionar el ciclo de vida de los objetos. El programa, u otros objetos pueden tener localizado un objeto mediante una referencia a ste (que, desde un punto de vista de bajo nivel es una direccin de memoria). Cuando no quedan referencias a un objeto, el recolector de basura de Java borra el objeto, liberando as la memoria que ocupaba previniendo posibles fugas (ejemplo: un objeto creado y nicamente usado dentro de un mtodo slo tiene entidad dentro de ste; al salir del mtodo el objeto es eliminado). An as, es posible que se produzcan fugas de memoria si el cdigo almacena referencias a objetos que ya no son necesarios?es decir, pueden an ocurrir,

pero en un nivel conceptual superior. En definitiva, el recolector de basura de Java permite una fcil creacin y eliminacin de objetos, mayor seguridad y puede que ms rpida que en C++. La recoleccin de basura de Java es un proceso prcticamente invisible al desarrollador. Es decir, el programador no tiene conciencia de cundo la recoleccin de basura tendr lugar, ya que sta no tiene necesariamente que guardar relacin con las acciones que realiza el cdigo fuente. Debe tenerse en cuenta que la memoria es slo uno de los muchos recursos que deben ser gestionados.

La plataforma virtual Java


Java es una plataforma virtual de software desarrollada por Sun Microsystems, de tal manera que los programas creados en ella puedan ejecutarse sin cambios en diferentes tipos de arquitecturas y dispositivos computacionales ( "Diferentes plataformas"). La plataforma Java consta de las siguientes partes:

* El lenguaje de programacin, mismo. * La mquina virtual de Java o JRE, que permite la portabilidad en ejecucin. * El API Java, una biblioteca estndar para el lenguaje.

El lenguaje de programacin Java


El lenguaje es parecido a C y C++, aunque su modelo de objetos es ms sencillo, y fue influenciado tambin por Smalltalk y Eiffel. El lenguaje mismo se inspira en la sintaxis de C++, pero su funcionamiento es ms similar al de Smalltalk que a ste. Incorpora sincronizacin y manejo de tareas en el lenguaje mismo (similar a Ada) e incorpora interfaces como un mecanismo alternativo a la herencia mltiple de C++. Los programas en Java generalmente son compilados a un lenguaje intermedio llamado bytecode, que luego son interpretados por una mquina virtual (JVM). Esta ltima sirve como una plataforma de abstraccin entre la mquina y el lenguaje permitiendo que se pueda "escribir el programa una vez, y correrlo en cualquier lado". Usualmente se usa un compilador JIT. Tambin existen compiladores nativos de Java, tanto software libre como no libre.

Otras observaciones
A fines del siglo XX, Java lleg a ser el lenguaje de mayor acogida para programas de servidor. Utilizando una tecnologa llamada JSP (similar a otras tecnologas del lado del servidor como ASP de Microsoft o PHP), se hiz muy fcil escribir pginas dinmicas para sitios de Internet. Sumado a JSP la tecnologa de JavaBeans, permita adaptar al mundo web el patrn MVC (modelo-vista-controlador) que ya se haba aplicado con xito a interfaces grficas.

Java lleg a ser extremadamente popular cuando Sun Microsystems introdujo la especificacin J2EE (Java 2 Enterprise Edition). Este modelo permite, entre otras cosas, lograr una separacin entre la presentacin de los datos al usuario (JSP o Applets), el modelo de datos (EJB), y el control (Servlets). Enterprise Java Beans (EJB) es una tecnologa de objetos distribuidos que pudo lograr el sueo de muchas empresas como Microsoft e IBM de crear una plataforma de objetos distribuidos con un monitor de transacciones. Con este nuevo estndar, empresas como BEA, IBM, Sun Microsystems, Oracle y otros crearon nuevos "servidores de aplicaciones" que tuvieron gran acogida en el mercado. Adems de programas del servidor, Java permite escribir programas de interfaz grfica o textual. Tambin se pueden correr programas de manera incorporada o incrustada en los navegadores web de Internet en forma de Java applets, aunque no lleg a popularizarse como se esperaba en un principio. Con la evolucin de las diferentes versiones, no slo se han producido cambios en el lenguaje, sino que se han producido cambios mucho ms importantes en sus bibliotecas asociadas, que han pasado de unos pocos cientos en Java 1.0, a ms de tres mil en Java 5.0. En particular, se han aadido APIs completamente nuevas, tales como Swing y Java2D.

Cmo surge Java? Historia de la tecnologa Java


En los primeros aos de la dcada de los noventa, Sun Microsystems decidi intentar introducirse en el mercado de la electrnica de consumo y desarrollar programas para pequeos dispositivos electrnicos. Tras unos comienzos dudosos, Sun decidi crear una filial, denominada FirstPerson Inc., para dar margen de maniobra al equipo responsable del proyecto. La tecnologa Java se cre como una herramienta de programacin en una pequea operacin secreta y annima denominada "the Green Project" en Sun Microsystems en el ao 1991. El equipo secreto ("Green Team"), compuesto por trece personas y dirigido por James Gosling, se encerr en una

oficina desconocida de Sand Hill Road en Menlo Park, interrumpi todas las comunicaciones regulares con Sun y trabaj sin descanso durante 18 meses. Intentaban anticiparse y prepararse para el futuro de la informtica. Su conclusin inicial fue que al menos en parte se tendera hacia la convergencia de los dispositivos digitales y los ordenadores. El resultado fue un lenguaje de programacin que no dependa de los dispositivos denominado "Oak" (roble en ingls). Entonces inicialmente Java se llam Oak, aunque tuvo que cambiar de denominacin, debido a que dicho nombre ya estaba registrado por otra empresa. Se dice este nombre se le puso debido a la existencia de tal rbol en los alrededores del lugar de trabajo de los promotores del lenguaje.

Para demostrar cmo poda contribuir este nuevo lenguaje al futuro de los dispositivos digitales, el equipo desarroll un controlador de dispositivos de mano para uso domstico destinado al sector de la televisin digital por cable. Por desgracia, la idea result ser demasiado avanzada para el momento y el sector de la televisin digital por cable no estaba listo para el gran avance que la tecnologa Java les ofreca. Pero poco tiempo despus Internet estaba listo para la tecnologa Java y, justo a tiempo para su presentacin en pblico en 1995, el equipo pudo anunciar que el navegador Netscape Navigator incorporara la tecnologa Java. Java fue diseado como software para dispositivos electrnicos de consumo. Curiosamente, todo este lenguaje fue diseado antes de que diese comienzo la era World Wide Web, puesto que fue diseado para dispositivos electrnicos como calculadoras, microondas y la televisin interactiva.

Tres de las principales razones que llevaron a crear Java son:

1. Creciente necesidad de interfaces mucho ms cmodas e intuitivas que los sistemas de ventanas que proliferaban hasta el momento. 2. Fiabilidad del cdigo y facilidad de desarrollo. Gosling observ que muchas de las caractersticas que ofrecan C o C++ aumentaban de forma alarmante el gran coste de pruebas y depuracin. Por ello en los sus ratos libres cre un lenguaje de programacin donde intentaba solucionar los fallos que encontraba en C++. 3. Enorme diversidad de controladores electrnicos. Los dispositivos electrnicos se controlan mediante la utilizacin de microprocesadores de bajo precio y reducidas prestaciones, que varan cada poco tiempo y que utilizan diversos conjuntos de instrucciones. Java permite escribir un cdigo comn para todos los dispositivos. Por todo ello, en lugar de tratar nicamente de optimizar las tcnicas de desarrollo y dar por sentada la utilizacin de C o C++, el equipo de Gosling se plante que tal vez los lenguajes existentes eran demasiado complicados como para conseguir reducir de forma apreciable la complejidad de desarrollo asociada a ese campo. Por este motivo, su primera propuesta fue idear un nuevo lenguaje de programacin lo ms sencillo posible, con el objeto de que se pudiese adaptar con facilidad a cualquier entorno de ejecucin. Basndose en el conocimiento y estudio de gran cantidad de lenguajes, este grupo decidi recoger las caractersticas esenciales que deba tener un lenguaje de programacin moderno y potente, pero eliminando todas aquellas funciones que no eran absolutamente imprescindibles.

Primeros proyectos en que se aplic Java


El proyecto Green fue el primero en el que se aplic Java, y consista en un sistema de control completo de los aparatos electrnicos y el entorno de un hogar. Con este fin se construy un ordenador experimental denominado *7 (Star Seven). El sistema presentaba una interfaz basada en la representacin de la casa de forma animada y el control se llevaba a cabo mediante una pantalla sensible al tacto. En el sistema apareca ya Duke, la actual mascota de Java. Ms tarde Java se aplic a otro proyecto denominado VOD (Video On Demand) en el que se empleaba como interfaz para la televisin interactiva que se pensaba iba a ser el principal campo de aplicacin de Java. Ninguno de estos proyectos se convirti nunca en un sistema comercial, pero fueron desarrollados enteramente en un Java primitivo.

Una vez que en Sun se dieron cuenta de que a corto plazo la televisin interactiva no iba a ser un gran xito, instaron a FirstPerson a desarrollar nuevas estrategias que produjeran beneficios. Entre ellas se encontraba la aplicacin de Java a Internet, la cual no se consider productiva en ese momento.

Resurgimiento de Java

Aunque muchas de las fuentes consultadas sealan que Java no lleg a caer en un olvido, lo cierto es que tuvo que ser Bill Joy (cofundador de Sun y uno de los desarrolladores principales del sistema operativo Unix de Berckley) el que sac a Java del letargo en que estaba sumido. Joy juzg que Internet podra llegar a ser el campo adecuado para disputar a Microsoft su primaca en el terreno del software, y vio en Oak el instrumento idneo para llevar a cabo estos planes. Para poder presentarlo en sociedad se tuvo que modificar el nombre de este lenguaje de programacin y se tuvo que realizar una serie de modificaciones de diseo para poderlo adaptar al propsito mencionado. As Java fue presentado en sociedad en agosto de 1995. Algunas de las razones que llevaron a Bill Joy a pensar que Java podra llegar a ser rentable son: * Java es un lenguaje orientado a objetos: Esto es lo que facilita abordar la resolucin de cualquier tipo de problema. * Es un lenguaje sencillo, aunque sin duda potente. * La ejecucin del cdigo Java es segura y fiable: Los programas no acceden directamente a la memoria del ordenador, siendo imposible que un programa escrito en Java pueda acceder a los recursos del ordenador sin que esta operacin le sea permitida de forma explcita. De este modo, los datos del usuario quedan a salvo de la existencia de virus escritos en Java. La ejecucin segura y controlada del cdigo Java es una caracterstica nica, que no puede encontrarse en ninguna otra tecnologa. * Es totalmente multiplataforma: Es un lenguaje sencillo, por lo que el entorno necesario para su ejecucin es de pequeo tamao y puede adaptarse incluso al interior de un navegador.

Java en cdigo abierto


Java se ha convertido en un lenguaje con una implantacin masiva en todos los entornos (personales y empresariales). El control que mantiene Sun sobre ste genera reticencias en la comunidad de empresas con fuertes intereses en Java (pe IBM, Oracle) y obviamente en la comunidad de desarrolladores de software libre. La evolucin basada en un comit en el que participen todos los implicados no es suficiente y la comunidad demandaba desde hace tiempo la liberacin de las APIs y libreras bsicas de la JDK. En diciembre de 2006, Sun est en pleno relanzamiento de su plataforma Java bajo la licencia GPL de GNU. Cuando este cambio de licencia haya terminado. Compromiso de Sun Microsystems con el cdigo abierto La importancia del cdigo abierto en relacin con Java puede verse entre otras cosas, en que el presidente y CEO de Sun, Jonathan Schwartz, ha retado a la compaa a que ofrezca cdigo abierto para todo el software que produce Sun

(fuente), Sun ya hace mucho tiempo que empez a apostar por el cdigo abierto cuando liber StarOffice (Llamado ahora OpenOffice). Sun ha aportado ms lneas de cdigo abierto que cualquier otra organizacin.

Cules son las diferencias entre JRE y SDK?

Adems de la amplia terminologa individual que existe en Java, existen diversos componentes ("KITS") que agrupan estas funcionalidades, y son estos componentes con los que se trabaja "da a da" en proyectos Java. JRE ("Java Runtime Environment")

Como su nombre lo indica este ambiente ("KIT") es utilizado solo para ejecutar ("Runtime") programas en Java. Esta situacin se da cuando empresas de Software disean alguna interfase grfica o aplicacin en Java para su producto. Cabe mencionar que muchos productos que utilizan Java para su interfase grfica o instalacin ya incluyen un JRE para evitarle la molestia de instalarlo, uno de estos es Oracle ; sin embargo, muchos productos requieren que usted posea este ambiente, si se pregunta: Porque me hacen que obtenga forzosamente este JRE ? Una de las principales razones es costo ya que las empresas deben pagar a Sun por distribuir este ambiente en su producto. "Java Development Kit"(JDK), "Standard Development Kit" (SDK) y "Java 2 Standard Edition" (J2SE) son nombres para el mismo componente e incluyen: El API de Java, el JRE ( JVM ), compilador de Java y otras funcionalidades definidas por Sun. Si no esta familiarizado programando en Java, el API de Java es un conjunto de clases que es utilizado para generar programas bsicos en el lenguaje; utilizando una analoga, estas clases tienen la misma funcionalidad que las funciones|clases estndar utilizadas en otros lenguajes C,C++, Perl (Esto es precisamente la definicin de API ("Application Programming Interface")). Partiendo de estas clases (API de Java) se generan TODOS los programas,interfaces y elementos programados en Java, inclusive a partir de estas clases usted puede definir otras clases especificas que sern utilizadas por su programa o producto. Una vez que defina sus programas|clases en Java an es necesario compilarlas para producir lo que es denominado byte-code o class files (este byte-code puede ser comparado con un binario), y es este byte-code el que interpreta el JRE("Java Runtime Environment").Este byte-code es el que directamente ofrece la interoperabilidad de Java o el afamado "Write once run everywhere" (Escribalo una vez ejecutelo en todos lados). Es una cantidad razonable de trabajo la que realiza el JDK|SDK, y por el hecho de incluir tanto el compilador,API Java y el JRE existen diversas implementaciones de JDK: JDK's de Sun (o J2SE) y JDK's de IBM.

Qu ediciones de Java tenemos a nuestra disposicin?

Existen varias Ediciones de Java, cada una de ellas diseada para cierto ambiente en particular. Estas ediciones son: * Java Standard Edition (Java SE) * Java Micro Edition (Java ME) * Java Entreprise Edition (Java EE) * Java Card Java Standard Edition es la edicin que se emplea en computadoras personales (desktops y laptops). Se le conoce tambin como Java Desktop (escritorio) y es la versin que tienes que instalar para poder programar en Java en tu computadora, aunque tus programas estn destinados para alguna de las otras ediciones. Java Platform, Standard Edition o Java SE (conocido anteriormente hasta la versin 5.0 como Plataforma Java 2, Standard Edition o J2SE), es una coleccin de APIs del lenguaje de programacin Java utiles para muchos programas de la Plataforma Java. La

Plataforma Java 2, Enterprise Edition incluye todas las clases en el Java SE, adems de algunas de las cuales son tiles para programas que se ejecutan en servidores sobre workstations. Java Micro Edition es la edicin que se emplea en dispositivos mviles, tales como los telfonos celulares. Es una versin recortada del Java SE con ciertas extensiones enfocadas a las necesidades particulares de esos tipos de dispositivos. La plataforma Java Micro Edition, o Java ME (anteriormente J2ME), es una coleccin de APIs en Java orientadas a productos de consumo como PDAs, telfonos mviles o electrodomsticos. Java ME se ha convertido en una buena opcin para crear juegos en telfonos mviles debido a que se puede emular en un PC durante la fase de desarrollo y luego subirlos fcilmente al telfono. Al utilizar tecnologas Java el desarrollo de aplicaciones o videojuegos con estas APIs resulta bastante econmico de portar a otros dispositivos. Java Enterprise Edition es la edicin que se emplea para hacer aplicaciones. Incluye a toda la Standard Edition y

muchas, muchas ms extensiones. J2EE es un grupo de especificaciones diseadas por Sun que permiten la creacin de aplicaciones empresariales, esto sera: acceso a base de datos (JDBC), utilizacin de directorios distribuidos (JNDI), acceso a mtodos remotos (RMI/CORBA), funciones de correo electrnico (JavaMail), aplicaciones Web(JSP y Servlets)...etc. Aqu es importante notar que J2EE es solo una especificacin, esto permite que diversos productos sean diseados alrededor de estas especificaciones algunos son Tomcat y Weblogic ; la especificacin ms reciente de Sun es J2EE 1.4, la cual esta conformada por: JSP 2.0 ,Servlet 2.4, EJB 2.1 y Connector 1.5 entre otros API's, los detalles se encuentran en http://java.sun.com/j2ee Aunque varios productos Java estn diseados alrededor de estas especificaciones, no todos cumplen con el estndar completo, esto es, Tomcat solo emplea|cumple las especificaciones de JSP y Servlets, sin embargo, existen productos como Websphere y algunos otros "Java Application Servers" que son considerados "Fully J2EE Compliant" , en otras palabras, cumplen con todas las especificaciones definidas por Sun. Sun ofrece una implementacin de TODAS estas especificaciones llamada J2EE SDK , a pesar que el J2EE SDK es una implementacin, esta es solo una muestra ofrecida por Sun para utilizar las funcionalidades de las especificaciones J2EE, aunque funcionara en un Sistema de Produccin su diseo es poco escalable adems que su licencia lo prohibe. Java Card es la versin de Java enfocada a aplicaciones que se ejecutan en tarjetas de crdito con chip. Es una versin muy recortada de Java. Una Java Card es una tarjeta capaz de ejecutar mini-aplicaciones Java. En este tipo de tarjetas el sistema operativo es una pequea mquina virtual Java (JVM) y en ellas se pueden cargar dinmicamente aplicaciones desarrolladas especficamente para este entorno.

Versiones de Java

Java 1 Java 1.0 (Enero 1996) - 8 paquetes, 212 clases Primera versin pblica. La presin hizo que se hiciera pblica demasiado pronto, lo cual significa que el diseo del lenguaje no es demasiado bueno y hay montones de errores. Respecto a seguridad, es restrictivo por defecto, no dejando hacer demasiado al cdigo no fiable. Java 1.1 (Marzo 1997) - 23 paquetes, 504 clases Mejoras de rendimiento en la JVM, nuevo modelo de eventos en AWT, clases anidadas, serializacin de objetos, API de JavaBeans, archivos jar, internacionalizacin, API Reflection (Reflexin), JDBC (Java Data base Connectivity), RMI (Remote Method Invocation). Se aade la firma del cdigo y la autentificacin. Es la primera versin lo suficientemente estable y robusta. Java 2 Java 1.2 (Diciembre 1998 ) - 59 paquetes, 1520 clases JFC (Swing), Drag and Drop, Java2D, Corba, API Collections. Se producen notables mejoras a todos los niveles. Para enfatizar esto Sun lo renombra como "Java 2". El JDK (Java Development Kit) se renombra como SDK (Software Development Kit). Se divide en J2SE, J2EE y J2ME. Java 1.3 (Abril 2000) - 77 paquetes, 1595 clases Orientada sobre todo a la resolucin de errores y a la mejora del rendimiento; se producen algunos cambios menores como la inclusin de JNDI (Java Naming and Directory Interface) y la API Java Sound. Tambin incluye un nuevo compilador de alto rendimiento JIT (Just In Time). Java 1.4 (2002) - 103 paquetes, 2175 clases Tambin conocido como Merlin, es la versin actual. Mejora notablemente el rendimiento y aade entre otros soporte de expresiones regulares, una nueva API de entrada/salida de bajo nivel (NIO, New I/O), clases para el trabajo con Collections, procesado de XML; y mejoras de seguridad como el soporte para la criptografa mediante las Java Cryptography Extension (JCE), la inclusin de la Java Secure Socket Extension (JSSE) y el Java

Authentication and Authorization Service (JAAS). Java 1.5 (Octubre 2004) - 131 paquetes, 2656 clases Tambin conocido como Tiger, renombrado por motivos de marketing como Java 5.0. Incluye como principales novedades: tipos genricos (generics), autoboxing/unboxing conversiones impliticas entre tipos primitivos y los wrappers correspondientes, Enumerados, Bucles simplificados, printf, Funciones con nmero de parmetros variable, Metadatos en clases y mtodos. Java 1.6 (diciembre de 2006) ? Tambin conocido como Mustang. Estuvo en desarrollo bajo la JSR 270. En esta versin, Sun cambi el nombre "J2SE" por Java SE y elimin el ".0" del nmero de versin. Los cambios ms importantes introducidos en esta versin son: Incluye un nuevo marco de trabajo y APIs que hacen posible la combinacin de Java con lenguajes dinmicos como PHP, Python, Ruby y JavaScript. Incluye el motor Rhino, de Mozilla, una implementacin de Javascript en Java. Incluye un cliente completo de Servicios Web y soporta las ltimas especificaciones para Servicios Web, como JAX-WS 2.0, JAXB 2.0, STAX y JAXP. Mejoras en la interfaz grfica y en el rendimiento.

IDE's
Mientras un JDK|SDK ofrece las herramientas para compilar y ejecutar programas en Java ste no ofrece un ambiente de trabajo para proyectos complejos, esto es, si usted compila una o dos clases quizs el comando javac ofrecido en los JDK es suficiente, pero si su proyecto estar compuesto por 100 o 200 clases, javac sera muy deficiente. Los IDE's (Integrated Development Environment) ofrecen un ambiente grfico en los que se tiene acceso a mayor nmero de herramientas no ofrecidas en los JDK's: Debuggers ms elaborados, check-points dentro de la compilacin,creacin de WAR's (Web-Archives), "Wizards" para acelerar desarrollo, entre otras cosas.

Algunos IDE's son:

NetBeans (http://www.netbeans.org) Open-Source

Eclipse (http://www.eclipse.org

) Open-Source

Sun Java Studio (http://developers.sun.com/jsenterprise/index.jsp) de Sun

JBuilder (http://www.codegear.com/products/jbuilder) de Borland

WebSphere Studio (http://www-306.ibm.com/software/awdtools/developer/application/) de IBM JDeveloper (http://www.oracle.com/technology/products/jdev/index.html ) de Oracle

Conclusiones finales

Actualmente, luego de cumplidos 10 aos de existencia, la plataforma Java ha atrado a cerca de 4 millones de desarrolladores de software, se utiliza en los principales sectores de la industria de todo el mundo y est presente en un gran nmero de dispositivos, ordenadores y redes de cualquier tecnologa de programacin. De hecho, su versatilidad y eficiencia, la portabilidad de su plataforma y la seguridad que aporta, la han convertido en la tecnologa ideal para su aplicacin a redes, de manera que hoy en da, ms de 2.500 millones de dispositivos utilizan la tecnologa Java. * Ms de 700 millones de ordenadores * 708 millones de telfonos mviles y otros dispositivos de mano * 1000 millones de tarjetas inteligentes

Das könnte Ihnen auch gefallen