| Artículos | 01 DIC 1996

Compiladores profesionales de Java

Tags: Histórico
Borland Development Suite, Java WorkShop 1.0, Microsoft Visual J++ 1.0 y Symantec Café 1.5
Jorge Pascual.

La programación sobre Internet evoluciona a pasos agigantados. En esta ocasión analizamos los compiladores profesionales de Java más potentes del mercado.

Las nuevas tecnologías de programación hacen que el profesional dedicado al desarrollo de aplicaciones tenga que actualizarse cada día. Un campo nuevo y muy específico es la programación sobre Internet. Hace unos meses se barajaban diversos lenguajes diseñados o adaptados para aprovechar las ventajas de la Red, pero hoy en día nadie pone en duda que el lenguaje de programación por excelencia para Internet es Java.

En contra de lo que pudiera parecer, Java no es un nuevo lenguaje diseñado específicamente para Internet, sino que fue desarrollado en el año 1.990 por Sun Microsystems con el objetivo de marcar las nuevas pautas de la tecnología de drivers. Esto supuso un gran fracaso para Sun, ya que el objetivo que se marcó no fue conseguido, pero con la extensión de Internet los desarrolladores de esta compañía vieron un gran futuro al lenguaje que habían desarrollado. Tras unas pequeñas modificaciones con el fin de adaptar completamente Java a las necesidades de Internet, se llegó al resultado que hoy todo el mundo conoce.

Dejando la historia a un lado, hoy nos encontramos con múltiples herramientas destinadas a ayudar al programador a desarrollar applets Java. En este artículo nos hemos centrado en las compiladores clásicos, ya que aunque se están elaborando compiladores visuales de Java, aún éstos se encuentran en fase alfa o beta y quedan lejos de su posible evaluación. Otro de los cimientos que se está construyendo con respecto al mundo Java son los Chips Java. Mediante ordenadores que incorporen este Chip será posible optimizar al máximo el código generado por las herramientas de programación Java, ya que no podemos olvidar que aunque los compiladores generen código compacto y ágil, en último lugar la interpretación de una buena parte del programa depende de la máquina en que se ejecute el mismo, ya que ésta será la encargada de la segunda fase de compilación de la applet creada. Si esta segunda compilación se resuelve por hardware en vez de por software, seguramente Java tomará mayor protagonismo del que está tomando en estos momentos, pues el gran handicap actual de este lenguaje es la velocidad de ejecución.

Centrándonos en el proceso de desarrollo de un applet Java vamos a ver las herramientas más importantes que han de incorporar los compiladores así como las características más destacables de cada una.

Entorno de programación

El primer entorno de programación en Java lo desarrolló Sun y se denominó JDK (Entorno de desarrollo Java). Éste contaba con un compilador en línea de comandos y todo lo necesario para el desarrollo de applets. Sin embargo, no era la forma más agradable y productiva de desarrollar aplicaciones Java, ya que al tener que trabajar en línea de comandos la tarea de compilación era engorrosa.

Pronto aparecieron los primeros entornos integrados. Algunos de ellos, como Microsoft J++, acaba de ver la luz hace escasas semanas y otros, los más antiguos, tienen tan sólo unos meses de vida. Todos los productos evaluados en esta comparativa están dotados de su correspondiente entorno integrado además de estar complementados de muchas otras herramientas de ayuda al programador que iremos viendo a lo largo del artículo. En el entorno de desarrollo se encuentra en primer lugar el gestor de proyectos. Esta utilidad permite al programador, al igual que sucede con los compiladores de otros lenguajes, tener estructurados de forma clara y precisa todos los componentes que integran el proyecto. En todos los compiladores analizados es posible agrupar dentro de un proyecto, además del código fuente en Java, la página o páginas HTML que se utilizan para visualizar la aplicación y los recursos como bitmaps, diálogos, menús, etc. que son utilizados.

Puesto que el código que generan los compiladores es el Byte Code, es necesario utilizar una aplicación encargada de trasladar el Byte Code generado a código máquina. Cuando se navega por Internet la herramienta encargada de la interpretación del Byte Code es el propio navegador, pero no es el único ejecutor de applets que existe. Una utilidad mucho más sencilla que se utiliza para ejecutar applets es el Applet Viewer. Esta utilidad consume menos recursos del sistema que un navegador, ya que únicamente contiene las utilidades necesarias para ejecución de applets. En el caso de Symantec Café Applet Viewer se ha dotado del compilador en tiempo real (JIT) de la misma casa. Aunque parece lógico que todos los compiladores deberían de utilizar esta utilidad en lugar de los navegadores, no es así en todos los casos. Por ejemplo, Microsoft J++ para ejecutar las applets generadas hace uso de Microsoft Explorer 3.0, por lo que la cantidad de recursos del sistema que se consumen son excesivos. Por este motivo lanzar un applet en Microsoft J++ es más lento que en Symantec. La utilización de Explorer 3.0 por parte de Microsoft J++ se debe a que es el único navegador que está capacitado para utilizar la tecnología ActiveX, tecnología que también es soportada por el compilador de Microsoft.

El corazón del entorno de desarrollo es el editor de código fuente. En el caso de Microsoft y Symantec el editor incluido soporta todas las ventajas de los tradicionales editores de otros lenguajes. Así es posible ver resaltado con colores las diferentes partes del código. Curiosamente en el caso de Borland no se realza el texto de los programas Java, aunque sí lo hace en el mismo entorno para programas C/C++. Esto se puede solucionar mediante la incorporación de un pequeño script. Java WorkShop tampoco aporta muchas facilidades dentro de su editor de texto y, al igual que sucede con Borland, no soporta colores dentro del editor.

La ayuda en línea es otro de los aspectos importantes dentro de un entorno de desarrollo, pues de forma fácil tendremos al alcance de la mano la información que necesitamos sin necesidad de recurrir a los manuales impresos. En este sentido Microsoft J++ supera a sus rivales, ya que la ayuda que incluye permite una localización rápida del tema a consultar. Symantec Café también cuenta con una buena ayuda on-line, pero Borland queda muy atrás en este sentido no incorporando ningún tipo de documentación impresa y muy escasa ayuda on-line. La ayuda proporcionada por Java WorkShop no es excesiva, pero cubre las necesidades habituales.

Herramientas visuales

Cuando se está desarrollando una aplicación del tipo que sea nunca son suficientes las ayudas que el compilador aporta al programador. Pese a que lo anterior siempre es cierto, no lo es menos que los esfuerzos de las compañías productoras de herramientas de programación se están centrando de forma especial en las herramientas visuales, pues la experiencia demuestra que este tipo de herramientas contribuye de forma muy satisfactoria a reducir el tiempo de creación y los errores que se cometen. En un compilador de un lenguaje orientado a objetos y destinado a aplicaciones ejecutables bajo entornos gráficos, las herramientas visuales básicas son tres: mapa de herencias, editor de clases y editor de recursos.

Con el mapa de herencias se realiza una visualización gráfica de los enlaces existentes entre las diferentes clases creadas. Esto permite de forma rápida y sencilla localizar las clases padres e hijos. En el caso de Symantec se incluye en el mismo mapa de herencias la posibilidad de editar las mismas de forma visual. El método consiste en pulsar con el ratón sobre una clase, y sin soltar, arrastrar una línea que aparece en pantalla sobre otra clase a la que se desee hacer padre o hijo de la primera. Si se suelta sobre un espacio vacío, Symantec Café permite definir una nueva clase cuya herencia quedará determinada por el enlace creado. Por supuesto, a esta nueva clase se

Contenidos recomendados...

Comentar
Para comentar, es necesario iniciar sesión
Se muestran 0 comentarios
X

Uso de cookies

Esta web utiliza cookies técnicas, de personalización y análisis, propias y de terceros, para facilitarle la navegación de forma anónima y analizar estadísticas del uso de la web. Consideramos que si continúa navegando, acepta su uso. Obtener más información