Tutorial de Eclipse
Tutorial de Eclipse
Tutorial de Eclipse
No se puede mostrar la imagen. Puede que su equipo no tenga suficiente memoria para abrir la imagen o que sta est daada. R einicie el equipo y , a continuacin, abra el archiv o de nuev o. Si sigue apareciendo la x roja, puede que
tenga que borrar la imagen e insertarla de nuev o.
TUTORIAL DE ECLIPSE
INFORMATICA III
FACULTAD DE INGENIERRIA ELECTRONICA Y
TELECOMUNICACIONES
Parte 1: Entorno de Proyectos de Eclipse
"La ciencia es conocimiento organizado. La sabidura es la propia vida organizada." Immanuel Kant.
En el entorno de desarrollo Eclipse todo archivo se almacena dentro de un proyecto. Esto quiere decir que
todo documento, carpeta, archivo de cdigo fuente (.java) y cdigo compilado (.class) tiene que estar
contenido dentro de un proyecto. As pues, el primer paso antes de usar Eclipse para programar en Java es
comprender la estructura de proyectos de Eclipse.
Es necesario crear un nuevo proyecto no slo para desarrollar un nuevo programa de Java, sino para editar
tambin archivos ya existentes (como por ejemplo, un programa ".java" almacenado en un diskette). Para
crear un nuevo proyecto, seleccione en la lnea de mens principal "File > New > Project...". Tambin es
posible seleccionar "New > Project..." haciendo clic derecho en cualquier parte una vista de Eclipse (como
por ejemplo, el Package Explorer o el Resour ce Navigator).
Para crear o editar programas Java, un "Java Project" debera ser creado. Ntese que de ntro de un
proyecto de Java tambin puede almacenarse toda la informacin relacionada con el proyecto (la
cual no tiene por qu reducirse estrictamente a cdigo fuente, sino que tambin puede contener
documentacin y otros archivos relacionados).
Los "Simple Project" slo deberan crearse para almacenar documentos y otros archivos, pero no
cdigo Java que se desee compilar. Por ello, siempre que se creen archivos ".java" sera
recomendable crear un "Java Project".
Los "Plug-in Development Project" se usan para aadir nuevos mdulos y funciones al entorno
Eclipse. Estos proyectos slo son necesarios si se es un desarrollador de Eclipse.
Los proyectos de "EMF" se utilizan para crear modelos de anlisis y diseo.
Puesto que este tutorial se centra en utiliz ar Eclipse para programar en Java, escogeremos crear un nuevo
"Java Project" seleccionando "Java > Java Project" y haciendo clic en el botn "Next >" del asistente de
creacin.
Tras esto, debe especificarse un nuevo nombre para el proyecto. Los proyectos profesionales se nombran
utilizando nombres de dominio dados la vuelta para evitar posibles conflictos de nombrado. Sin embargo,
para un proyecto de uso interno cualquier nombre descriptivo ser suficiente. En este ejemplo, se ha
llamado al nuevo proyecto "Eclipse Tutorial".
Si se usa el directorio por defecto, los archivos del proyecto se almacenarn en el directorio
"[DirectorioDeInstalacin] \workspace\[NombreProyecto]". Tambin es posible especificar un directorio
diferente en el que guardar dichos contenidos.
Pese a que en este punto es ya posible terminar la creacin del nuevo proyecto haciendo clic en el botn
"Finish", es recomendable pulsar de nuevo el botn "Next >" para definir explcitamente de esta manera una
carpeta fuente para los archivos ".java" desde el principio. Las carpetas fuente ("Source Folders") almacenan
los archivos de cdigo fuente de Java (.java), de manera que Eclipse sepa donde encontrarlos y pueda
realizar la compilacin automtica de los mismos cada vez que un archivo sea guardado.
Para crear dicha carpeta fuente seleccione la pestaa de "Sour ce" y pulse el botn "Add Folder...".
Seleccione el proyecto recientemente creado y pulse el botn "Create New Folder". Un buen nombre para
esta carpeta fuente podra ser sencillamente "src". Tras especificar dicho nombre, pulse "Ok". A la pregunta
de si desea actualizar la carpeta de salida de archivos compilados, debera responder afirmativamente. De
este modo, los archivos ".class" que resulten de la compilacin de los ".java" almacenados en la carpeta
fuente irn a parar a la carpeta " \bin". Pulse el botn "Finish" para terminar el proceso de creacin del
nuevo proyecto. Si se nos pregunta si deseamos pasar a la perspectiva de Java, deberamos responder
afirmativamente.
El proyecto recin creado debera parecerse a este, tal y como lo muestra la vista "Navigator".
En Eclipse 3.0 la creacin de proyectos es un tanto diferente a Eclipse 2.x. An puede definirse una
carpeta cualquiera para almacenar los proyectos. Pero ahora los pasos anteriormente expuestos
acerca de la creacin de una estructura adecuada de carpetas fuente y destino pueden omitirse, ya que en la
nueva versin de Eclipse basta con marcar la opcin "Create separate source and output folders" para
construir de forma automtica la estructura de archivos deseada.
Como ya se mencion anteriormente, para editar un elemento existente debera ser primero importado
dentro de un proyecto de Eclipse. Esto puede hacerse desde el men "File > Import..." o bien pulsando con
el botn derecho en cualquier punto de la vista del "Package Explorer" o del "Resource Navigator". Para
seleccionar un archivo o directorio hay que seleccionar " File system" en el sub men de importacin.
Entonces slo habr que recorrer los directorios marcando los archivos que se deseen importar as como el
proyecto y la carpeta destino.
Es importante tener en cuenta que todo elemento que se importa en Eclipse se duplica. Esto significa que
borrar la copia que Eclipse est manejando no borrar el archivo original, de manera que se seguir teniendo
una copia de reserva. Sin embargo, si se u sa la opcin de importar un proyecto de Eclipse ya existente, los
contenidos de dicho proyecto sern duplicados. As que hay que ser especialmente cuidadoso al borrar
proyectos importados del entorno de trabajo de Eclipse, ya que es posible que otras copia s de backup de
dicho proyecto no existan.
Todo archivo creado mediante la utilizacin de Eclipse puede ser exportado como un archivo normal
(seleccionando Export... > File System), como un archivo ".jar" e incluso como archivos comprimidos en
".zip". El proceso que hay que seguir es similar al proceso recientemente explicado para importar archivos,
slo que seleccionando ahora la opcin "Export".
Tambin es posible copiar, cortar y pegar archivos y carpeta s desde Eclipse hasta los directorios del sistema
operativo (por ejemplo, del explorador de Windows) y viceversa (seleccionando un archivo, pulsando
CTRL+C, seleccionando la carpeta destino dentro de Eclipse y pulsando CTRL+V).
Parte 2: Crear Elementos de Java
"Hasta el viaje ms largo comienza con un solo paso." Proverbio chino.
Una vez que se ha creado un nuevo proyecto, es hora de aprender cmo crear los diversos elementos de
Java. Para seguir los pasos que se exponen a continuacin es necesario cambiar a la "Perspectiva Java" (si no
se ha hecho ya) seleccionando "Window > Perspectives > Java". La perspectiva de Java contiene las vistas y
editores ms tiles a la hora de crear nuevos programas en Java.
Haciendo clic derecho en la carpeta fuente recienteme nte creada (por ejemplo, "src") dentro de la vista del
Package Explorer, aparecer un men contextual. Seleccionando "New >" en dicho men se mostrar una
lista con los diversos elementos de Java que pueden ser creados.
Algunos de dichos elementos pueden ser creados tambin realizando clic sobre los iconos del men de la
parte superior de la pantalla.
Java Class
Las clases de Java son los ar chivos ".java" que contienen el cdigo fuente y que sern posteriormente
compilados en archivos ".class". Estos archivos Java tienen que ser almacenados dentro de la carpeta fuente
recientemente creada (por ejemplo, "src"). Pulse "New > Class" para abrir l a ventana de creacin de clases.
La carpeta fuente especificada debera ser la carpeta recientemente definida (src). Si no se especifica ningn
paquete para contener las clases Java, se guardarn dentr o de un paquete por defecto. El ltimo campo
obligatorio que debera ser rellenado antes de proceder a la creacin de la clase Java es el propio nombre de
la clase. Las convenciones de Java sugieren que el nombre de una clase debera comenzar con mayscula . En
este tutorial se ha usado el nombre "ExampleClass".
Tambin existen otros modificadores que pueden ser fcilmente aadidos a una clase desde el mismo
momento de su creacin. Sin embargo, estos elementos tambin podran ser aadidos manualmente en
otras fases ms avanzadas del proceso de desarrollo. Si se pretende que la nueva clase extienda (herede de)
otra clase existente, se debera especificar la clase "padre" dentro del campo "Superclass". El botn
"Browse..." es de gran utilidad a la hora de encon trar clases que sean posibles candidatas para ser
extendidas. Aunque Java slo soporta herencia nica (slo puede extenderse de una nica clase) s que es
posible que una clase implemente ms de una interfaz. Una vez ms, el botn "Browse..." simplifica la tarea
de seleccionar interfaces implementadas.
Si se desea que la nueva clase contenga un mtodo "main" (es decir, el punto inicial de ejecucin del
programa), puede aadirse dicho mtodo automticamente slo con marcar la casilla con la opcin
apropiada. Tambin pueden implementarse de esta manera los constructores de la superclase y todos los
mtodos abstractos heredados. Esta ltima opcin es muy til si se desea instanciar la clase puesto que para
esto todo mtodo abstracto debera estar implementado.
Es interesante destacar que los archivos compilados ".class" slo son visibles en la ventana "Navigator",
abierta por defecto dentro de la perspectiva "Resource". Puesto que la perspectiva de Java no abre esa
ventana por defecto, los ficheros .class no ser n visibles en la vista del Package Explorer. Sin embargo, basta
con escribir y guardar un archivo ".java" para que se cree un archivo ".class" resultante de compilar el
archivo fuente anterior.
Archivos
Los archivos que se crean a travs de este men suelen almacenar notas e informacin general. Otros
archivos tales como archivos de configuracin, archivos "build" de ant y similares tambin pueden crearse de
esta manera. Crear un nuevo archivo es tan senc illo como pulsar "New > File", seleccionar el proyecto y
carpeta adecuados en que se desea crear el archivo, dar nombre al nuevo archivo y pulsar el botn "Finish".
Por defecto, archivos los archivos genricos se abren en el editor de texto.
Folder
Las carpetas se utilizan para almacenar y organizar archivos. Como ya se ha mencionado anteriormente, una
carpeta normal no es exactamente lo mismo que una carpeta fuente. Una prctica recomendada de
programacin es crear explcitamente una carpeta fuente donde almacenar los archivos .java con el cdigo
fuente (src), una carpeta de salida donde guardar el cdigo compilado (bin) y una carpeta para guardar toda
la documentacin relacionada (docs). Para crear una nueva carpeta basta con especificar el nombre de la
nueva carpeta y la carpeta que la contiene.
Interfaces
Las interfaces son casos particulares de las clases de Java, que carecen de implementacin y que se espera
que otras clases implementen. Usualmente funcionan como una especie de contrato, indicando lo que la
clase implementada debera hacer, mientras que los detalles de ms bajo nivel corresponderan al
implementador. El procedimiento de creacin de interfaces es muy similar al procedimiento de creacin de
nuevas clases ya detallado. Aunque una interfaz no pue de implementar ninguna interfaz, s que puede
extender otra interfaz mediante una relacin de herencia.
Paquetes
Los paquetes se declaran para almacenar y organizar los archivos de Java. El nombre de un paquete consta
usualmente de varias partes separadas p or puntos. Cada una de estas partes ser un directorio nuevo dentro
del sistema de archivos. Las clases que se creen dentro de un paquete determinado en Eclipse llevarn
aadida automticamente la declaracin "package" en su cdigo fuente.
Scrapbook Page
Estas "hojas de sucio" son una forma sencilla de probar fragmentos de cdigo antes de aadirlos al
programa final. Slo hay que crear una "Scrapbook Page" dentro de la carpeta deseada y escribir el
cdigo dentro de ella. No hace falta meter el cdigo dentro de un mtodo main para ejecutarlo.
En Eclipse 3.0 las "scrapbook pages" no se muestran directamente en el men contextual. Para
crear una nueva hoja de sucio seleccione "New > Other > Java > Java Run/Debug > Scrapbook
Page". Otra diferencia respecto de las versiones 2.x es que en Eclipse 3.0 s que estn habilitadas las
funciones de auto completar dentro de las scrapbook pages.
Antes de intentar ejecutar el cdigo aadido es necesario importar las clases usadas. Para ello basta con
realizar clic derecho sobre cualquier parte de la hoja y seleccionar "Set Imports" del men contextual. Ah es
donde hay que especificar los tipos y paquetes que es necesario aadir.
Para ejecutar el cdigo recin creado es necesario seleccionarlo pinchando con el botn izqu ierdo del ratn
y arrastrando hasta tener todo el cdigo seleccionado. Luego hay que pulsar el botn derecho del ratn
sobre este cdigo seleccionado y ejecutar la opcin "Execute" del men contextual. La salida estndar de
dicho proceso se mostrar dentro de la vista "Console", y otros mensajes de error se mostrarn dentro de la
misma hoja de sucio.
Una vez que se ha completado la prueba habra que pulsar el botn "Stop Evaluation" del men contextual.
Puesto que el editor de estas hojas de prueba no propo rciona tantas funciones de ayuda a la programacin
como el editor de cdigo Java, una prctica recomendada es escribir el cdigo original en el editor de Java y
luego pegarlo en esta hoja de pruebas.
Source Folder
Como ya se vio, las carpetas fuente son un tipo especial de carpetas destinadas a almacenar los archivos
fuentes de Java (es decir, los de extensin ".java"). Estos archivos de cdigo sern automticamente
compilados en archivos ".class". Puesto que todo proyecto de Java debera tener una carpet a fuente, es una
prctica recomendada organizar esto desde el primer momento, como se explic en la primera parte de este
tutorial.
Parte 3: Funciones tiles de Programacin
"Cualquier tecnologa suficientemente avanzada es indistinguible de la magia." Art hur C. Clarke.
Hasta ahora se han expuesto conceptos bsicos del funcionamiento general de Eclipse. Es hora de presentar
las funciones de ayuda a la programacin de Eclipse. Es en esta parte donde se dar cuenta de cmo usar
Eclipse para programar en Java ahorra gran cantidad de tiempo y esfuerzo. Mientras que las partes
anteriores de este tutorial eran necesarias, esta ser la ms interesante.
Es importante tener en cuenta que en Eclipse los errores de compilacin se muestran en tiempo real
subrayando el fragmento de cdigo adecuado con una lnea roja. Y adems el entorno automticamente
compila los archivos salvados. As pues, no ser necesario pasar por el tedioso y lento proceso de compilar -
observar los errores - corregir los errores.
Los errores pueden encontrarse fcilmente porque se muestran adems como marcas rojas en el margen
derecho del editor de cdigo Java. Tambin los errores y advertencias presentes en archivos ya guardados se
muestran dentro de la vista de tarea s (Tasks View), como se detallar posteriormente. Haciendo click en
cualquiera de los dos tipos de marcadores de error llevar automticamente hasta la lnea en que el error
est presente. Las advertencias (warnings) se muestran de la misma manera, pero co n marcas amarillas.
Hemos visto como Eclipse detecta y marca todo error y advertencia de compilacin. Eclipse habitualmente
permite autocorregir los posibles errores haciendo clic en el icono de bombilla presente en el margen
izquierdo del editor de cdigo. As pues, aparecer una ventana mostrando todas las opciones. Seleccionar
una opcin mediante los cursores del teclado o dejar el punto del ratn sobre dicha opcin abrir una nueva
ventana mostrando detalladamente las modificaciones de cdigo que la autocorreccin efectuara. Basta
con pulsar la opcin seleccionada (o pulsar ENTER) para hacer que Eclipse lleve a cabo la correccin
automatizada.
Una vez que conozca la til funcin de autocompletar la usar continuamente. A travs de los siguientes
ejemplos prcticos aprender cuales son las situaciones ms comunes en que esta funcin de ayuda a la
programacin resultar muy til.
Nombres de Clases
Crear referencias a otras clases dentro de la clase actual es una tarea de programacin habitual. Sin
embargo, algunas clases de Java tienen nombres muy largos que son difciles de recordar. Adems, es
necesario aadir declaraciones de importacin para poder resolver dichas referencias a clases a la hora de
compilar.
Usar "CTRL + Espacio" tras escribir los primeros caracteres del nombre de una clase Java mostrar las
posibles alternativas. Puede seleccionar cualquiera de ellas simplemente realizando clic izquierdo del ratn.
Ntese que la sentencia de importacin correspondiente se aadir de forma automtica. Las clases se
marcan con una "C" verde mientras que las interfaces se marcan con una "I" morada. El paquete al que
pertenece la clase se muestra tambin, permitiendo de este modo evitar posibles confusiones.
Atributos y Variables Locales
Cuando se define una clase es normal dar nombres inventados a sus atributos y a las variables internas de
los mtodos. Pero en ocasiones resulta difcil recordar el nombre exacto. Tras escribir los primeros
caracteres del atributo o de la variable local, pulsar "CTRL + Espacio" mostrar las posibles alternativas. Este
proceso es muy similar al de autocompletar el nombre de las clases recientemente expuest o. Las variables
locales se marcan con el icono de una "L" gris, mientras que los atributos se marcan con un icono que puede
variar segn la visibilidad del atributo.
Mtodos y Constructores
Una vez que se ha creado un objeto Java pueden invocarse los mtodos correspondientes a su clase. Sin
embargo, es bastante habitual olvidar el nombre de un mtodo en concreto, o incluso los tipos de sus
parmetros y su orden. Este problema puede solucionarse fcilmente pulsando "CTRL + Espacio" tras escribir
el nombre del objeto seguido de un punto, lo cual mostrar una ventana con las posibles alternativas. Pulsar
sobre la alternativa escogida aadir la signatura del mtodo al objeto.
Tambin es posible autocompletar la signatura de los constructores pulsando "CTRL + Espacio" tras escribir
(o autocompletar) el nombre de la clase seguido de un signo de apertura de pa rntesis, "(".
Escribir las primeras letras del modificador de un mtodo tal como "public" o "private" y pulsar "CTRL +
Espacio" le permitir crear automticamente una plantilla del mtodo. Pulsar el tabul ador permite saltar de
un campo de la plantilla a otro, de manera que se pueda completar el tipo de retorno, el nombre del mtodo
y sus parmetros.
Bucles
Los bucles suelen estar presentes en todos los programas. Aunque crear un nuevo bucle puede no ser una
tarea muy compleja, Eclipse proporciona algunas funciones de auto completado que pueden acelerar
considerablemente el proceso. Basta con escribir "do", " while" o "for" y pulsar "CTRL + Espacio" para
mostrar las posibles opciones. Si el bucle ha sido creado con el propsito de iterar sobre un array de
elementos, seleccionar esta opcin intentar autocompletar incluso el nombre del array.
Etiquetas de Javadoc
Mientras que los comentarios internos del programador se indican con una "//", los comentarios de Javadoc
se inician con un "/**". Tras crear un mtodo, aadir "/** + ENTER" sobre la signatura del mtodo
autocompletar informacin de Javadoc tal como "@param [nombreParmetro] [comentario]", "@return
[descripcinDatosDevueltos]" y "@throws [tipoExcepcin] [comentario]". Pulsar "CTRL + Espacio" dentro de
un bloque "/** ... */" mostrar toda la lista de etiq uetas Javadoc posibles.
Men "Source"
Mediante un clic derecho en el editor de cdigo se mostrar un men contextual. Las funciones ms
importantes de su submen "Source >" son las siguientes:
Seleccionando esta opcin se puede comentar o quitar la marca de comentario del cdigo. Esto es
especialmente til usado con bloques de cdigo, puesto que permite no ejecutar temporalmente partes del
cdigo sin llegar a eliminarlas. L as teclas rpidas asociadas son "CTRL + /" para aadir comentarios y "CTRL +
\" para eliminar dichas marcas de comentario del bloque de cdigo seleccionado.
En Eclipse 3.0 estos comandos han sido sustituidos por "Toggle Comment". Seleccionando este
nuevo comando del men "Source" es posible cambiar el estado del cdigo seleccionado,
pasndolo de comentario a cdigo o viceversa. Tambin la nueva opcin "Add Block Comment"
marcar el cdigo como comentario rodendolo con los smbolos "/*" y "*/". Mientras qu e seleccionar un
bloque de cdigo comprendido entre esos smbolos de comentario har que en aparezca la opcin "Remove
Block Comment", la cual eliminara los smbolos de comentario.
Format
Ntese que las funciones de indentacin de cdigo permiten identificar rpidamente qu fragmentos de
cdigo son afectados por una condicin o buc le determinados, por ejemplo. Pero tambin es til situar el
cursor tras un parntesis o llave, porque de esta forma se marcar el parntesis asociado que abre o cierra el
bloque con un cuadrado gris. As pues, se ver de un vistazo qu cdigo se encuentra realmente
comprendido entre los dos parntesis.
Aunque las sentencias de importacin adecuadas se muestran siempre cuando se usan las funciones de
autocompletar cdigo para completar el nombre de una clase Java, nuevas sentencias de importacin
pueden aadirse en cualquier momento usando la funcin "Ad d Import". Pulsar "Organise Imports"
eliminar automticamente todas las declaraciones de importacin no utilizadas, incrementando la
eficiencia del cdigo. El mtodo abreviado del teclado es "CTRL + Maysculas + O".
Seleccionando esta opcin de sombrear o implementar mtodos abrir una ventana de men en la cual se
podrn marcar los mtodos de la superclase cuya signatura se desea que se aada.
La opcin "Add Constructors from Supercl ass" permitir especializar todos los constructores usados.
El lenguaje Java permite especificar diferentes niveles de visibilidad de atributos. Sin embargo, en
programacin orientada a objetos, los atributos internos de una cla se deberan ser siempre privados. Esto
quiere decir que no debera poder realizarse ningn tipo de modificacin directa del atributo de una clase
desde otra clase externa. A causa de esto, la nica manera de acceder a un atributo privado para leer su
valor o bien para darle un nuevo valor sera utilizando un mtodo accesor o modificador que sea pblico.
Seleccionando "Generate Getter and Setter" una ventana mostrando los posibles mtodos que podran
crearse de acuerdo con los atributos definidos aparecer. Entonces los mtodos necesarios podran crearse
simplemente seleccionndolos y pulsando "Ok".
Surround with try/catch block
Para utilizar esta opcin es necesario tener seleccionado de ante mano un fragmento de cdigo pinchando
con el botn izquierdo del ratn (o pulsando Maysculas) y arrastrando. Activar esta opcin crear un
bloque "try" alrededor del cdigo seleccionado. Tras este bloque se aadirn automticamente los bloques
"catch" adecuados, los cuales atraparn toda posible excepcin que el cdigo rodeado pueda lanzar. Por
defecto se aade una sentencia de traza dentro de esos bloques "catch" de manera que sea posible
identificar inmediatamente dnde se lanz la excepcin.
Ntese tambin que, cuando una excepcin no es atrapada, aparecer como texto en rojo (de la salida de
error estndar) en la vista "Console". Pulsar la lnea de cdigo en que se muestr a en qu lnea tuvo lugar la
excepcin llevar directamente a ese punto del programa en el editor de cdigo.
Refactor Menu
Haciendo clic derecho en el editor de cdigo mostrar el men contextual. A conti nuacin se muestran las
funciones ms interesantes del sub men "Refactor >".
Rename
Para invocar la funcin de renombrado hay que tener previamente seleccionado un elemento. Marcar la
opcin de "update references" actualizar toda referencia al nuevo ele mento renombrado. Usando esta
opcin de "Refactor > Rename..." es como deberan renombrarse todos los elementos incluyendo los
archivos ".java". Puesto que as se actualizan todas las referencias no aparecern problemas a la hora de
compilar. Al renombrar determinados elementos ser posible actualizar tambin referencias en comentario
de Javadoc, comentarios normales y cadenas de caracteres entrecomilladas, lo cual tambin puede resultar
bastante til. La opcin de "Preview" permite asegurarse de que no hab r ningn tipo de error durante la
operacin de renombrado.
Move
Antes de seleccionar "Refactor > Move...", el archivo fuente o elemento que se desea mover deber haber
sido seleccionado. Entonces ser slo necesario seleccionar el destino de manera que se lleve a cabo la
operacin de mover. Esta es la forma correcta de mover archivos ya que evita problemas futuros con
referencias y rutas de compilacin.
Change Method Signature
Para modificar la signatura de un mtodo es posible usar esta opcin en lugar de hacerlo manualmente. Slo
hay que colocar el cursor dentro del mtodo cuya signatura se desea cambiar. Esta es una forma rpida de
cambiar la visibilidad, el tipo de retonro, los parmetros y su orden. Los nuevos parmetros se aaden
pulsando el botn "Add" y se modifican pulsando en botn "Edit".
Si la clase actual extiende o es extendida por otra clase, puede ser interesante mover algunos elementos a la
superclase (pull up) o a la subclase (push down) respectivamente. Seleccionar el elemento y la opcin
adecuada llevar a cabo esta operacin de forma automatizada.
Consultar la Documentacin
La documentacin Javadoc del cdigo que se est actualmente programando puede s er consultada en
tiempo real simplemente colocando el cursor o el puntero del ratn sobre el elemento elegido. Para
expandir la ventana con esta documentacin basta con pulsar la tecla de funcin F2.
La documentacin Javadoc externa (como por ejemplo, la documentacin oficial de las clases de Java) puede
consultarse modificando dentro de las preferencias del JRE instalado ("Window > Preferences > Installed
JRE") con "Edit" la ubicacin del Javadoc. De esta manera, dejando el cursor sobre el nombre de la clase y
pulsando "Maysculas + F2" se abrir la documentacin por el punto adecuado.
Eclipse 3.0 dispone de una nueva vista de Javadoc ("Window > Show View... > Java > Javadoc").
Dicha vista muestra la documentacin Javadoc asociada al elemento sobre el que est situado el
cursor.
Importar Archivos JAR
En ocasiones puede ser necesario importar algunos archivos Jar no incluidos por defecto en el JRE estndar
para que el proyecto pueda compilar. Basta con pulsar el botn derecho del ratn sobre la carpeta
adecuada, elegir "Properties > Java Build Path", seleccionar la pestaa "Libraries", pulsar el botn "Add
External Jars" y seleccionar el archivo ".jar" o ".zip". El nuevo Jar aadido ser visible en la ventana Package
Explorer como un pequeo frasco.
Parte 4: Vistas de Eclipse
"Hay dos clases de conocimiento. Podemos conocer un tema por nosotros mismos, o bien conocer dnde
encontrar informacin al respecto." Samuel Johnson.
La interfaz de usuario de Eclipse consta de dos tipos de elementos: vistas y editores. Mientras que los
editores normalmente permiten realizar una tarea completa, las vistas proporcionan funciones de apoyo. En
este punto del tutorial ya debera tener bastante prctica usando el editor de cdigo cuyas funciones
principales se detallaron en la parte 3. Ahora, l as vistas ms interesantes de Eclipse se explicarn con detalle,
junto a algunos consejos de cmo navegar a travs de los editores.
Perspectivas
Una perspectiva de Eclipse es una agrupacin de vistas y editores de manera que den apoyo a una actividad
completa del proceso de desarrollo software. Sin embargo, es posible crear perspectivas propias aadiendo
nuevas vistas y cambiando su distribucin en la pantalla. Las perspectivas pueden seleccionarse haciendo clic
en los iconos de perspectiva del lateral izq uierdo o eligiendo "Window > Open Perspective" del men. Las
perspectivas son:
Resource: esta perspectiva est estrechamente relacionada con el sistema de archivos puesto que
representa la localizacin fsica de los recursos almacenados dentro de los proy ectos
Java: esta perspectiva se centra en tareas de programacin, mostrando paquetes, clases, mtodos y
atributos en sus vistas asociadas.
Plug-in development: la perspectiva de desarrollo de plug -in permite a los desarrolladores aadir
nuevos mdulos de Eclipse.
Debug: relacionada con la tarea de depuracin. Se centra en los procesos ejecutados, puntos de ruptura,
variables, salida, etc.
Java Browsing: esta perspectiva permite ojear rpidamente cdigo, proyectos, paquetes y jerarquas.
En Eclipse 3.0 los iconos de perspectiva se han trasladado a la esquina superior derecha. Tambin
hay ahora un botn etiquetado como "Open a Perspecti ve" que permite acceder rpidamente a
otras perspectivas. Otro cambio es que la perspectiva "Install/Update" ha sido eliminada, y puede
accederse a sus funciones seleccionando "Help > Software Updates".
Tareas
La vista de tareas ("Tasks View") permite una rpida gestin de tareas pendientes. Seleccionando "Window >
Show View > Tasks" se muestra esta vista. Pueden aadirse nuevas tareas haciendo clic en el botn "Add
task". Ntese que la prioridad de la t area y su estado tambin pueden modificarse sin ms que hacer clic en
dichos campos. Tambin los errores y las advertencias de los archivos con cdigo guardados se muestran en
esta vista. Haciendo clic en la descripcin de un error llevar hasta el punto e xacto del cdigo en que se
encuentra dicho error.
Aadir "TODO [descripcin]" a un archivo Java aadir una nueva tarea "por hacer" a la vista de tareas. Una
vez ms, hacer clic sobre su descripcin conducir hasta el punto exacto en que la etiqueta "TODO" se
aadi. Dentro del editor de cdigo Java las etiquetas de "TODO" pueden encontrarse rpidamente ya que
se muestran como pequeas marcas azules en el margen derecho. Hacer clic sobre estas marcas llevar
directamente a la lnea etiquetada. Ntese que va rios procesos automatizados insertan estas etiquetas
"TODO" para asegurarse de que el cdigo autogenerado es revisado y comentado.
Haciendo clic derecho en cualquier punto de la vista de tareas se mostrar un men contextual que
permitir realizar de forma rpida cualquier actividad relacionada con la gestin de las tareas definidas.
Navegador
La ventana del navegador de recursos permite echar un vistazo a la estructura de archivos de los proyectos
definidos. Ntese que esta vista es la nica que muestra la carpe ta de salida ("bin") as como los archivos
Java compilados (".class").
Package Explorer
La vista del explorador de paquetes muestra la estructura lgica de paquetes y clases Java almacenados en
los distintos proyectos. las carpetas fuente (que deben almacenar los archivos fuente ".java") se muestran
aqu decoradas con el icono de un paquete contenido. Los archivos Java tambin pueden ser expandidos de
modo que muestren sus mtodos y atributos internos al pulsar el botn "+".
Working Set
Un conjunto de trabajo es un grupo de elementos que se muestran en las distintas vistas de eclip se. Estos
conjuntos de trabajo se usan como filtros que permiten separar claramente los diferentes proyectos en que
se est trabajando. Esto puede resultar muy til cuando se est trabajando simultneamente en varios
proyectos no directamente relacionados entre s. Organizar los distintos proyectos en grupos de trabajo
acelerar el proceso de buscar los elementos deseados y reducir la confusin visual.
Para definir un conjunto de trabajo, basta con pulsar en el icono de men del Package Explorer (el icono de
un tringulo invertido) y seleccionar "Select Working Set". Aqu se permitir nombrar un nuevo conjunto de
trabajo, as como seleccionar sus recursos relacionados y editar o quitar otros conjuntos de trabajo
existentes. Todos los conjuntos de trabajo di sponibles se muestran directamente la prxima vez que se pulse
el icono triangular de men.
Es importante tener en cuenta que crear un nuevo proyecto cuando un conjunto de trabajo est siendo
usado har que el nuevo proyecto no se muestre dentro de las vistas de Ecipse. Para poder ver el proyecto
recin creado, ser necesario editar el conjunto de trabajo actual ("Men de la vista > Select Working Set >
Edit" o directamente "Edit Current Working Set") y se leccionar el nuevo proyecto para que se muestre.
Outline View
La vista de resumen es una forma rpida de ver qu mtodos i atributos se encuentran definidos dentro de
una clase de Java. Los iconos asociados proporcionan informacin adicional de acuerdo co n la visibilidad del
atributo o mtodo en cuestin. Y slo con hacer clic en cualquiera de estos iconos conducir a la lnea de
cdigo exacta en que dicho atributo o mtodo est definido. La vista de resumen es una herramienta
esencial para entender y nave gar archivos Java voluminosos.
Hierarchy View
La vista de jerarqua muestra las relaciones de herencia presentes entre distintos elementos de Java.
Haciendo clic derecho en el nombre de una clase Java en el editor de cdigo y seleccionando "Open Type
Hierarchy" abrir esta vista de jerarqua. La tecla rpida asociada es "F4"
En Eclipse 3.0 se ha aadido la opcin "Open Call Hierarchy" al men cont extual del editor de
cdigo. Tras seleccionar un mtodo, al hacer clic en esta opcin se abrir una vista que mostrar
dnde es usado dicho mtodo. Las teclas rpidas asociadas son "CTRL + ALT + H".
Fast Views
Arrastrar una vista hasta el margen izquie rdo (hasta que aparezca un icono de carpetas apiladas) convierte
esta vista en una "vista rpida". Pulsar el icono de la vista rpida har que dicha vista se muestre, mientras
que volver a pulsarlo (o pulsar en cualquier otro punto de la pantalla) har que se oculte. Mediante un clic
derecho en el icono de la vista rpida y seleccionando "Fast View" restaurar la vista a su posicin original.
El rea por defecto en que se apilan las vistas rpidas ha sido cambiada en Eclipse 3.0. Ahora es un
pequeo rectngulo situado en la esquina inferior izquierda de la pantalla. As pues, las vistas
rpidas se crean ahora arrastrando la vista dentro del rectngulo hasta que aparece un icono de
una flecha dentro de un cuadrado. No obstante, la zona en que almacenar las v istas rpidas puede
cambiarse de sitio colocando el cursor sobre ella hasta que se transforma en un cursor con cuatro flechas,
arrastrando y depositando la zona en el lugar deseado.
Search View
Para realizar una bsqueda dentro de Eclipse, el men "Search" de la barra superior de mens debera ser
seleccionado. Tambin se pueden lanzar bsquedas pulsando el icono de linterna.
La bsqueda de archivos "File Search" es una bsqueda textual que puede ser ejecutada sobre archivos de
todo tipo. Es equivalente a una bsqueda tradicional.
La bsqueda de ayuda "Help Search " efecta bsquedas dentro de la ayuda de Eclipse.
La bsqueda de Java "Java Search" es similar a la bsqueda de archivos pero proporciona funciones
adicionales para buscar en archivos Java. As pues, permite buscar explcitamente por tipos, mtodos,
paquetes, constructores y campos, usando restricciones de bsqueda adicionales (como por ejemplo, buscar
slo el punto del cdigo en que se declararon los elementos coincidentes).
Es importante comprobar que la bsqueda se efecta sobre los ficheros apropiados. Esto puede definirse
usando el campo "scope". "Workspace" hace referencia al entorno de trabajo completo. "Selected
Resources" son slo los archivos seleccionados (es posible seleccionar ms de un archivo haciendo clic
izquierdo en ellos mientras se manti ene pulsada la tecla CTRL). "Working Set" es un conjunto de trabajo
previamente definido.
Los resultados de la bsqueda aparecen en la vista "Search". Tambin se subrayan en gris dentro del editor
de cdigo, con una flecha amarilla en el margen izquierdo y con una marca gris en el margen derecho.
Haciendo clic en cualquiera de estos elementos seremos conducidos al punto en que la cadena buscada se
encontr.
Basta con hacer doble clic en el ttulo de una ventana para maximizarla. Doble clic en el ttulo de nuevo har
que las dimensiones y posicin de la vent ana sean restauradas a las que tena originalmente. En Eclipse 3.0
se ha aadido "CTRL + M" como tecla rpida asociada a maximizar o restaurar la ventana del editor actual.
Ir al ltimo Cambio
El icono del men representado como "una flecha con un asteris co" sirve para colocar el cursor en el ltimo
punto del cdigo que fue modificado dentro del editor activo. Es habitual que tras cambiar algo de cdigo
(por ejemplo, tras escribir algunas instrucciones nuevas) movamos el cursor a otra lnea para revisar ot ra
parte del programa. Si deseramos volver al punto en que aadimos el ltimo cambio (que suele ser el lugar
por el que "bamos programando") tendramos el problema solucionado con slo pulsar este icono de "ir al
ltimo lugar editado". Las teclas rpidas asociadas son "CTRL + Q".
Y pulsando la flecha de "navegar hacia delante" recorreremos el historial de lugares visitados hacia los
puntos ms recientes.
De hecho, estas tiles acciones funcionan de forma muy similar a como lo hacen los botones de "atrs" y
"adelante" de un navegador web. La opcin de "atrs" slo se activa si existen puntos de programas que se
visitaron previamente. Y la opcin de "adelante" se activa tras haber pulsdo el botn de "atrs". Tambin
hay que tener en cuenta que pulsando en el pequeo t ringulo negro que se encuentra junto a las flechas de
navegacin desplegaremos un men que muestra otros archivos (distintos del abierto en la ventana activa
del editor) en los que se encuentran otros puntos visitados accesibles. Por cierto, para cambiar la ventana
activa del editor a otras ventanas abiertas existe un mtodo abreviado: "ALT + F6" (comando de "siguiente
editor").
Las tiles teclas rpidas asociadas a estas acciones de navegacin son "ALT + IZQUIERDA" para navegar hacia
atrs y "ALT + DERECHA" para navegar hacia delante.
Revisar Problemas
Los botones de "Ir al siguiente/anterior problema" permiten recorrer uno tras otro los problemas pendientes
que aparecen en el editor actual.
Aunque esta es una forma sistemtica de revisar los problemas, es interesante recordar que tambin puede
accederse directamente a los problemas, advertencias, resultados de bsqueda y tareas pendientes sin ms
que hacer clic en sus marcas asociadas que aparecen en e l margen derecho del editor.
En Eclipse 3.0 estos botones de "ir a problema" se han sustituido por botones de "ir a anotacin".
Haciendo clic en el pequeo tringulo negro cercano a estas flechas de navegacin por anotaciones
se abrir una lista editable con los tipos de anotaciones que sern recorridas. As pues, el uso de
estos botones no est ya limitado slo a la comprobacin de problemas ya que ahora se pueden realizar
tambin otras tareas tiles tales como, por ejemplo, comprobar sistemticamente tod as las "tareas
pendientes" ("TODO") sin ms que seleccionar "Tasks" en dicha lista.
Parte 5: Ejecutar y Depurar
"En unos pocos minutos, un ordenador puede cometer un error tan grave que muchos ho mbres necesitaran
muchos meses para igualarlo." Annimo.
Cuando el programa de Java est completado ser hora de ejecutarlo y probarlo. Quizs aparezcan algunos
"bugs" a la hora de ejecutarlo. Entonces ser hora de depurar el programa. Afortunadamente, E clipse
proporciona ayuda a las tareas de ejecutar y depurar cdigo.
Ejecutar
Para ejecutar un programa dentro de Eclipse hay que seleccionar "Run > Run..." del men principal. Dentro
de "Configurations" se almacenan diferentes configuraciones de ejecucin . Hay cuatro tipos de
configuraciones de ejecucin: Java Applet (para applets web), Java Application (para programas normales de
Java), JUnit (casos de prueba) y Run -Time Workbench (otras instancias de Eclipse que permiten probar
nuevos mdulos de Eclipse) .
As pues, para ejecutar un programa de Java normal debera seleccionarse "Java Application" y pulsar el
botn "New" para crear una nueva configuracin. Dentro de la pestaa "Main" hay que dar nombre a la
nueva configuracin seleccionar el proyecto que contiene la clase con el mtodo main y seleccionar dicha
clase. El mtodo "main" es el punto de ejecucin de un programa Java, y se representa como un peque o
icono de un hombre corriendo al lado del icono de la clase.
Si se desea pasar argumentos al mtodo main (en la forma de "String[] args"), no hay ms que hacer clic en
la solapa de "Arguments" y escrib ir esos argumentos separados por espacio dentro de la zona en blanco de
"Program Arguments".
Finalmente, hacer clic en el botn "Run" lanzar la ejecucin del programa seleccionado. Una forma ms
rpida de arrancar la ejecucin del programa recientemente ejecutado es pulsar en el icono de un hombre
corriendo que aparece en el men principal. Pulsar la flecha prxima a este icono mostrar otras
configuraciones de ejecucin recientemente utilizadas.
En Eclipse 3.0 el icono anterior ha sido reemplazado por una flecha blanca dentro de un crculo
verde.
Depurar
Aunque Java no es tan difcil de depurar como otros lenguajes de programacin, tambin es perfectamente
posible que surjan complejos problemas de ejecucin. Eclipse da apoyo completo a la tare de depuracin a
travs de su perspectiva "Debug" ("Window > Open Perspective > Debug" o selec cionando el icono del
"bicho" en el margen izquierdo). Dentro de esta perspectiva de depuracin, haciendo clic en el margen
izquierdo del editor de cdigo aparecer un men contextual. Seleccionando "Add/Remove Breakpoint"
aadir o quitar un punto de rup tura, mientras que "Toggle Breakpoint" cambiar el estado de activacin
del punto de ruptura. Los puntos de ruptura marcan lneas en que la ejecucin del programa se detendr de
manera que sea posible comprobar el valor de las variables en ese instante, id entificando as posibles
errores.
Si se desea que el programa se detenga en los puntos de ruptura definidos deber ser ejecutado en modo
depuracin ("Run > Debug..."). Tras detenerse en un punto de ruptura la ejecucin del programa puede
continuar de diversas maneras. Haciendo clic derecho en el editor de cdigo dentro de la perspectiva de
depuracin aparecer un men contextual con estas opciones. "Run to line" reanuda la ejecucin del
programa hasta que se alcanza la lnea en que est el cursor. "Step into selection" continuar la ejecucin
dentro del mtodo seleccionado siempre y cuando el cdigo fue nte del mtodo est disponible. La ejecucin
tambin puede reanudarse mediante un clic derecho en la ventana de "Debug" y seleccionando las opciones
adecuadas, o directamente pulsando los iconos de dicha ventana. "Step over" parar en la lnea siguiente a
la invocacin de un mtodo. "Resume" reanudar la ejecucin normal del programa y slo se interrumpir
en los puntos de ruptura si sus condiciones de activacin se satis facen.
La vista "Variables" proporciona informacin verdaderamente til ya que muestra los valores que tienen
actualmente las variables cuando la ejecucin se detienen en un punto de ruptura.
La vista de "Debug" tambin es til para observar diferentes procesos que estn siendo ejecutados
simultneamente, como por ejemplo, hebras. Cuando el proceso de depuracin ha terminado, los procesos
mostrados en la ventana de depuracin se muestran como "Finished" (pueden acabarse manualmente con
"Clic derecho > Terminate"). La informacin de ejecuciones previas puede elminarse realizando clic derecho
sobre ella y seleccionando "Terminate and Remove" o "Terminate All" ms "Remove All Termin ated".
Gestin de Cambios
No es extrao cambiar cdigo del programa y darse cuenta despus de que la nueva versin funciona incluso
an peor que la primera versin. Ese es el motivo de que los programadores tengamos que guardar
diferentes versiones del pr ograma cada vez que introducimos un nuevo cambio. Sin embargo, esta prctica
inevitable es normalmente tediosa y consume mucho tiempo. Afortunadamente, Eclipse proporciona un
potente sistema de gestin de cambios y de control de versiones. Haciendo clic de recho en un archivo Java
dentro del Package Explorer y selecionando "Replace With > Local History" permitir reemplazar la versin
actual por una versin previamente guardada. La hora y fecha de modificacin se muestran junto con dos
ventanas que destacan las diferencias existentes entre ambas versiones.
Seleccionando "Window > Preferences > Workbench > Local History" permitir seleccionar cuantas
versiones, megas y das almacenar. As pues, se puede obten er un buen equilibrio personalizado entre
seguridad y eficiencia.