viernes, 20 de junio de 2008

EL ENTORNO DE DESARROLLO DE JAVA

Existen distintos programas comerciales que permiten desarrollar código Java. La compañía Sun,
creadora de Java, distribuye gratuitamente el Java(tm) Development Kit (JDK). Se trata de un
conjunto de programas y librerías que permiten desarrollar, compilar y ejecutar programas en Java.
Incorpora además la posibilidad de ejecutar parcialmente el programa, deteniendo la ejecución en el
punto deseado y estudiando en cada momento el valor de cada una de las variables (con el
denominado Debugger). Cualquier programador con un mínimo de experiencia sabe que una parte
muy importante (muchas veces la mayor parte) del tiempo destinado a la elaboración de un
programa se destina a la detección y corrección de errores. Existe también una versión reducida del
JDK, denominada JRE (Java Runtime Environment) destinada únicamente a ejecutar código Java
(no permite compilar).
Los IDEs (Integrated Development Environment), tal y como su nombre indica, son entornos
de desarrollo integrados. En un mismo programa es posible escribir el código Java, compilarlo y
ejecutarlo sin tener que cambiar de aplicación. Algunos incluyen una herramienta para realizar
Debug gráficamente, frente a la versión que incorpora el JDK basada en la utilización de una
consola (denominada habitualmente ventana de comandos de MS-DOS, en Windows NT/95/98)
bastante difícil y pesada de utilizar. Estos entornos integrados permiten desarrollar las aplicaciones
de forma mucho más rápida, incorporando en muchos casos librerías con componentes ya
desarrollados, los cuales se incorporan al proyecto o programa. Como inconvenientes se pueden
señalar algunos fallos de compatibilidad entre plataformas, y ficheros resultantes de mayor tamaño
que los basados en clases estándar.
Capítulo 1: Introducción a Java página 3
1.2.1 El compilador de Java
Se trata de una de las herramientas de desarrollo incluidas en el JDK. Realiza un análisis de sintaxis
del código escrito en los ficheros fuente de Java (con extensión *.java). Si no encuentra errores en
el código genera los ficheros compilados (con extensión *.class). En otro caso muestra la línea o
líneas erróneas. En el JDK de Sun dicho compilador se llama javac.exe. Tiene numerosas opciones,
algunas de las cuales varían de una versión a otra. Se aconseja consultar la documentación de la
versión del JDK utilizada para obtener una información detallada de las distintas posibilidades.
1.2.2 La Java Virtual Machine
Tal y como se ha comentado al comienzo del capítulo, la existencia de distintos tipos de
procesadores y ordenadores llevó a los ingenieros de Sun a la conclusión de que era muy importante
conseguir un software que no dependiera del tipo de procesador utilizado. Se planteó la necesidad
de conseguir un código capaz de ejecutarse en cualquier tipo de máquina. Una vez compilado no
debería ser necesaria ninguna modificación por el hecho de cambiar de procesador o de ejecutarlo
en otra máquina. La clave consistió en desarrollar un código “neutro” el cual estuviera preparado
para ser ejecutado sobre una “máquina hipotética o virtual”, denominada Java Virtual Machine
(JVM). Es esta JVM quien interpreta este código neutro convirtiéndolo a código particular de la
CPU utilizada. Se evita tener que realizar un programa diferente para cada CPU o plataforma.
La JVM es el intérprete de Java. Ejecuta los “bytecodes” (ficheros compilados con extensión
*.class) creados por el compilador de Java (javac.exe). Tiene numerosas opciones entre las que
destaca la posibilidad de utilizar el denominado JIT (Just-In-Time Compiler), que puede mejorar
entre 10 y 20 veces la velocidad de ejecución de un programa.