Eclipse

431 visualizaciones

Publicado el

Partes de eclipse

Publicado en: Educación
0 comentarios
0 recomendaciones
Estadísticas
Notas
  • Sé el primero en comentar

  • Sé el primero en recomendar esto

Sin descargas
Visualizaciones
Visualizaciones totales
431
En SlideShare
0
De insertados
0
Número de insertados
4
Acciones
Compartido
0
Descargas
4
Comentarios
0
Recomendaciones
0
Insertados 0
No insertados

No hay notas en la diapositiva.

Eclipse

  1. 1. CETIS 109 ALUMNA:CERVANTES RAMIRES YESICA ARELI MARTINEZ RAMOS JACQUELINE JANETH MATERIA: DESARROLLA APLICACIONES MOVILES MAC. MARGARITA ROMERO
  2. 2. ¿Qué es Eclipse? Eclipse es una plataforma de desarrollo de código abierto basada en Java. Por si misma, es simplemente un marco de trabajo y un conjunto de servicios para la construcción del entorno de desarrollo de los componentes de entrada. Afortunadamente, Eclipse tiene un conjunto de complementos, incluidas las Herramientas de Desarrollo de Java (JDT) Mientras que la mayoría de los usuarios están felices de usar Eclipse como un IDE de Java, sus ambiciones no se detienen ahí. Eclipse también incluye el Entorno de Desarrollo de Complementos (PDE), que es de interés principalmente para los desarrolladores que quieren extender Eclipse, dado que les permite construir herramientas que se integran sin dificultades con el entorno de Eclipse. Dado que todo en Eclipse es un complemento, todos los desarrolladores de herramientas tienen un campo de juego de nivel para ofrecer extensiones a Eclipse y para proporcionar un entorno de desarrollo integrado y unificado para los usuarios. Esta paridad y consistencia no está limitada a las herramientas de desarrollo de Java. Aunque Eclipse se escribe en el lenguaje Java, su uso no se limita al lenguaje Java. Por ejemplo, los complementos se encuentran disponibles o planificados para incluir soporte para los lenguajes de programación como C/C++ y COBOL. El marco de trabajo de Eclipse puede también utilizarse como base para otros tipos de aplicaciones que no se relacionen con el desarrollo del software, como los sistemas de gestión de contenido. El ejemplo principal de una aplicación basada en Eclipse es el entorno de trabajo de IBM® WebSphere® Studio, que forma la base de la familia de IBM de las herramientas de desarrollo de
  3. 3. Java. WebSphere Studio Application Developer, por ejemplo, agrega soporte para JSP, servlets, EJB, XML, servicios web y el acceso a la base de datos. Volver arriba Eclipse es un código abierto El software de código abierto es un software lanzado con una licencia que pretende asegurarse de que se les otorguen ciertos derechos a los usuarios. Por supuesto, el derecho más obvio es que el código fuente debe estar disponible, entonces los usuarios tienen la libertad de modificar y de re distribuir el software. Esta protección de los derechos de los usuarios se alcanza con un dispositivo denominado copyleft: la licencia del software solicita la protección del derecho de autor y prohíbe la distribución, a menos que el usuario tenga esos derechos. El copyleft también requiere que cualquier software redistribuido sea cubierto por la misma licencia. De hecho, por este motivo, el propósito del derecho de autor se sostiene en su título — al utilizar el derecho de autor para otorgar derechos al usuario, en lugar de reservarlos para el desarrollador de software — copyleft a menudo se describe como "todos los derechos revocados". La mayor parte del temor, la incertidumbre y las dudas que se han generado acerca de que el software de código abierto implica la llamada naturaleza viral de algunas licencias de copyleft — la idea de que si utiliza un software de código abierto como parte de un programa que desarrolle usted, perderá su propiedad intelectual porque la licencia "infectará" las partes propietarias que desarrolle. En otras palabras, la licencia podría requerir que todo el software agrupado con el software de código abierto, incluidos los software más recientemente desarrollados, deban ser lanzados bajo la misma licencia. Mientras que esto podría ser cierto de la licencia de copyleft más reconocida, la Licencia Pública General de GNU
  4. 4. (bajo la cual se lanzó Linux®, por ejemplo), existen otras licencias que proporcionan un mejor equilibrio entre las preocupaciones comerciales y las de la comunidad. La Iniciativa de Software de Código Abierto es una organización sin fines de lucro que define lo que significa un código abierto y certifica las licencias que cumplen con este criterio. Eclipse está bajo la Licencia Pública Común (CPL) V1.0 aprobada por OSI, cuyo "objetivo es facilitar el uso comercial del Programa..." (para acceder al texto completo de la Licencia Pública Común V1.0, ver Recursos). Los desarrolladores que crean complementos para Eclipse o que utilizan eclipse como la base para una aplicación de desarrollo de software deben lanzar algún código de Eclipse que utilicen o modificarlo bajo el CPL, pero tienen la libertar de licenciar sus propias adiciones de la manera que quieran. El código propietario unido agrupado con el software de Eclipse no necesita licenciarse como un código abierto y el código fuente no necesita estar disponible. Aunque la mayoría de los desarrolladores no utilizarán Eclipse para desarrollar los complementos o para crear nuevos productos basados en Eclipse, la naturaleza del código abierto de Eclipse es importante más allá del simple hecho de que Eclipse se encuentre disponible de forma gratuita (y más allá del hecho de que una licencia comercialmente inocua implique que los complementos puedan costar dinero). El código abierto alienta la innovación y proporciona incentivos para los desarrolladores, incluso para los desarrolladores comerciales para contribuir con el código nuevamente a la base del código fuente abierto y común. Existen varias razones para esto, pero tal vez la más esencial es que cuantos más desarrolladores colaboran con el proyecto, más valioso para a ser para todos. A medida que el proyecto es cada vez más valioso, más desarrolladores lo utilizarán y crearán una
  5. 5. comunidad en torno a él, como la que se formó en torno a Apache y a Linux. ¿Quién es Eclipse? El Consorcio de Eclipse.org administra y dirige el desarrollo continuo de Eclipse. Según se informó, el Consorcio de Eclipse.org fue creado después de que IBM invirtiera $40 millones en el desarrollo de Eclipse y lanzado como un proyecto de código abierto. El Consorcio de Eclipse.org reclutó varios proveedores de herramientas de software, entre ellos, Borland, Merant, Rational, RedHat, SuSE, TogetherSoft y QNX. Ya se unieron otras empresas, entre ellas, Hewlett-Packard, Fujitsu y Sybase. Cada una de estas empresas designa a un representante para el Panel de Stewards que determina la dirección y el alcance del proyecto de Eclipse. En el nivel más alto, el Comité de Gestión de Proyectos (PMC) administra el proyecto Eclipse. El proyecto se divide en subproyectos y cada uno tiene un líder. Los subproyectos grandes se dividen en componentes y cada uno de ellos también tiene un líder. En el presente, la mayoría de estos roles gerenciales son ocupados por personas de la subsidiaria de IBM que originalmente desarrolló Eclipse, Tecnología Internacional de Objetos (OTI), pero como un proyecto de código abierto, cualquier persona es bienvenida a participar. Se obtiene la responsabilidad para cualquier precio específico al contribuir con el proyecto. Ahora que hemos profundizado en algo de la teoría, la historia y las políticas de Eclipse, analicemos el producto en sí. El entorno de trabajo de Eclipse La primera vez que abre Eclipse, visualiza la pantalla de bienvenida.
  6. 6. Ilustración 1 El entorno de trabajo de Eclipse El entorno de trabajo de Eclipse consiste de varios paneles conocidos como vistas, como la vista del Navegador en la parte superior izquierda. Una colección de paneles se denomina una perspectiva. La perspectiva por defecto es la Perspectiva de Recursos, que es un conjunto básico y genérico de vistas para proyectos de gestión y para la visualización y edición de archivos en un proyecto. La Vista del navegador le permite crear, seleccionar y eliminar proyectos. El panel hacia la derecha del Navegador es la área del editor. Según el tipo de documento seleccionado en el navegador, aquí se abre la ventana adecuada del editor. Si Eclipse no tiene un editor adecuado registrado para un tipo determinado de documentos (por ejemplo, un archivo .doc en el sistema de Windows®), Eclipse intentará abrir el documento con un editor externo.
  7. 7. La Vista esquemática, que se encuentra debajo del Navegador, presenta un esquema del documento en el editor. La naturaleza precisa de este esquema depende del editor y el tipo de documento; para un archivo fuente Java, el esquema muestra cualquier clase declarada, atributos y métodos. La Vista de tareas recopila información sobre el proyecto en el que está trabajando. Puede ser información generada por Eclipse, como errores de compilación o pueden ser tareas que agrega de forma manual. La mayoría de las demás funciones del entorno de trabajo, como el menú o la barra de tareas, deberían ser similares a las de las aplicaciones familiares. Una función conveniente es la barra de herramientas de atajos a diferentes perspectivas que aparece en el lado izquierdo de la pantalla; varían de forma dinámica según el contexto y la historia. Eclipse también incluye un sistema robusto de ayuda que incluye una guía del usuario para el entorno de trabajo de Eclipse y los complementos incluidos como las Herramientas de Desarrollo de Java. Vale la pena buscar en archivos de ayuda al menos una vez para ver la variedad de opciones disponibles y para conocer mejor el flujo de Eclipse. Para continuar con este tipo por recorrido de Eclipse, crearemos un proyecto en el Navegador. Haga clic en la Vista del navegador y luego seleccione New > Project. Cuando aparece el cuadro de New Project, seleccione Java en la izquierda. Eclipse estándar solo tiene un tipo de proyecto Java, que se denomina Java Project. Si había complementos instalados para proporcionar suministro para los JSP y los servlets, nos gustaría ver una opción adicional aquí para las aplicaciones web. Por ahora, seleccione el Java Project, ingrese "Hello" cuando el programa se lo pida para el nombre del proyecto y luego haga clic en Finish. A continuación, le daremos un vistazo a la perspectiva de Java. Según cómo quiera administrar su pantalla, puede cambiar la
  8. 8. perspectiva en la ventana actual al seleccionar Window > Open Perspective > Java o puede abrir una nueva ventana al seleccionar Window > New Window y selecciona la nueva perspectiva. La perspectiva de Java, como usted podría esperar, tiene un conjunto de vistas que se adaptan mejor para el desarrollo de Java. Una de ellas incluye, al igual que la vista izquierda superior, una jerarquía que contiene varios paquetes Java, clases, JAR y archivos varios. Esta vista se denomina el Explorador de paquetes. También puede notar que el menú principal se expandió para incluir dos elementos nuevos en el menú: Fuente y refactorizador El Entorno de Desarrollo de Java (JDE) Para probar el entorno de desarrollo de Java, crearemos y ejecutaremos una aplicación "Hello World". Con la perspectiva de Java, haga clic derecho en el proyecto Hello y seleccione New > Class, como se muestra en la Ilustración 2. En el cuadro de diálogo que aparece, escriba "Hello" como el nombre de la clase. En "Which method stubs would you like to create?", verifique "public static void main(String[] args)" y luego Finish. Ilustración 2 Creaciónde una nueva clase en la perspectiva de Java
  9. 9. Esto creará un archivo .java con una clase Hello y un método main() vacío en el área del editor como se muestra en la Ilustración 3. Agregue el código siguiente al método (tenga en cuenta que la declaración para i se ha omitido de forma deliberada): Ilustración 3 La clase Hello en el editor de Java
  10. 10. A medida que escriba va a notar algunas de las funciones del editor de Eclipse, incluido el control de sintaxis y la finalización del código. En V2.1 (que pre visualicé al descargar construir M2), cuando escribe un paréntesis abierto o una cotización doble, Eclipse proporcionará a su asociado de forma automática y ubicará el cursor dentro del par. En otros casos, puede invocar la finalización del código al usar Ctrl + Barra espaciadora. La finalización del código proporciona una lista sensible al contexto de sugerencias seleccionables por el teclado o el mouse. Las sugerencias pueden ser una lista de métodos específicos para un objeto en particular o un fragmento de código según las palabras clave como for o while. La verificación de la sintaxis depende de la compilación en aumento. A medida que guarda su código, se compila en el segundo plano y se verifican los errores de sintaxis. De forma predeterminada, los errores de sintaxis se resaltan en rojo y
  11. 11. aparece un punto rojo con una X blanca en el margen izquierdo. Otros errores se indican con una bombilla en el margen izquierdo del editor; estos son los problemas que el editor podría solucionar para usted — una función denominada Quick Fix. El código anterior tiene una bombilla junto a la afirmación for porque la declaración para i se omitió. Haga doble clic en la bombilla para que aparezca una lista de los arreglos sugeridos. En este caso, ofrecerá la creación de un campo de clase i, una variable local i o un parámetro de método i; al hacer clic en cada una de estas sugerencias se mostrará el código que se generaría. La Ilustración 4 muestra la lista de sugerencias y el código que sugiere para una variable local. Ilustración 4 Sugerencias de arreglosrápidos Al hacer doble clic en la sugerencia, inserte el código en la ubicación adecuada en el código. Una vez que se compila el código sin errores, puede ejecutar el programa al seleccionar Run desde el menú de Eclipse. (Tenga en cuenta que no hay un paso individual de compilación porque la compilación tiene lugar cuando guarda el código. Si su código no
  12. 12. tiene errores de sintaxis, está listo para ejecutarse). Aparece un cuadro de diálogo Launch Configurations con las fallas adecuadas; haga clic en Run en la parte inferior derecha. Aparece un panel con pestañas en el panel inferior (la Consola) que muestra la salida de datos del programa como se muestra en la Ilustración 5. Ilustración 5 Salida de datos del programa También puede ejecutar el programa en el depurador de Java: Primero, establezca el punto límite en main() System.out.println() al hacer doble clic en el margen gris en el lado izquierdo de la vista del editor System.out.println(). Aparecerá un punto azul. Desde el menú Run, seleccione Debug. Como se lo describe más arriba, aparecerá el diálogo Launch Configurations. Seleccione Run. La perspectiva cambiará de forma automática a la perspectiva Debug con una cantidad interesante de nuevas vistas como se lo muestra en la Ilustración 6.
  13. 13. Ilustración 6 La perspectivade depuración Primero, encuentre la vista Debug en la izquierda superior de la perspectiva. Esta vista muestra la pila de llamada y tiene una barra de herramientas en la barra del título que le permite controlar la ejecución del programa, incluidos los botones para resumir, suspender o terminar el programa, pasar a la siguiente afirmación, pasar a la que le sigue y regresar desde un método. El panel que se encuentra en la derecha superior contiene un número de vistas con pestañas, entre ellas, Variables, Breakpoints, Expressions y Display. Hice clic en Variables, entonces podemos ver el valor actual de i. Puede obtener más información sobre cualquiera de las vistas con la ayuda en contexto: Haga clic en el título de la vista y presione F1. Plug-in adicionales
  14. 14. Además de los complementos como el JDT para la edición, la compilación y las aplicaciones de depuración, los complementos que se encuentran disponibles y que soportan el proceso de desarrollo completo desde el modelado, la automatización de la creación, hasta las pruebas, las pruebas de rendimiento, el control de las versiones y la gestión de la configuración. Eclipse incluye un complemento para trabajar con CVS, el Sistema de Versiones Concurrentes para el control de fuentes. El complemento del Equipo conecta el servidor CVS, lo que permite que los miembros de un equipo de desarrollo trabajen en un conjunto de archivos de códigos fuente sin pasar por arriba los cambios de otros. El control fuente proveniente de Eclipse no se explorará más aquí porque requiere configurar un servidor de CVS, pero la capacidad de soportar un equipo de desarrollo, no solo permanecer junto al desarrollo, es una función importante e integral de Eclipse. Los complementos de terceros incluyen lo siguiente: Control de versión y gestión de configuración  CVS  Merant PVCS  Rational ClearCase Modelaje UML  OMONDO EclipseUML  Rational XDE (remplaza a Rose)  Junto con la Edición de WebSphere Studio Gráficos  Batik SVG  Macromedia Flash
  15. 15. Desarrollo Web, HTML, XML  Macromedia Dreamweaver  XMLBuddy Integración del Servidor de Aplicaciones  Lanzador Sysdeo Tomcat Para una lista más completa de complementos disponibles, consulte Recursos. Ejemplo: Complemento de modelación de UML Para visualizar un ejemplo de complemento y ver cómo se integra con Eclipse, descargue el OMONDO EclipseUML popular (consultar Recursos); necesitará registrarse, pero el complemento es gratuito. Este complemento depende del Marco de Trabajo del Editor Gráfico (GEF), otro complemento para Eclipse. GEF es parte del proyecto secundario de las Herramientas. Para descargar GEF, diríjase al sitio Web de Eclipse (consulte Recursos), seleccione Descargas y haga clic en el enlace para la página de descargas de PMC de herramientas. Tenga en cuenta que necesitará descargar el GEF creado recomendado por OMONDO (GEF V2.0 para OMONDO V1.0.2). Una vez descargado, generalmente, se instala un complemento al descomprimir un archivo descargado y al copiar sus contenidos en el directorio de complementos de Eclipse. En este caso, GEF requiere que se lo descomprima en el directorio de Eclipse (automáticamente se dirige al directorio de complementos desde allí) mientras que EclipseUML requiere descomprimir directamente en el subdirectorio de complementos del directorio de Eclipse. Para estar seguro, podría querer descomprimir cada uno en un directorio temporario y copiar los directorios según resulte pertinente desde
  16. 16. aquí. Si Eclipse está ejecutado, necesitará detenerlo y reiniciarlo para organizar los complementos. Una vez que EclipseUML (y GEF) están instalados, puede crear un diagrama de clase de la misma manera que crea un archivo de clase de Java. En la perspectiva de Java, haga clic en el proyecto Hello en el Explorador del paquete y seleccione New > Other desde el menú desplegable. Habrá una nueva opción para UML en el panel izquierdo del New dialog. La versión gratuita de EclipseUML solo soporta los diagramas de clase, entonces la única opción en la derecha es UML Class Diagram. Seleccione UML Class Diagram y el tipo en un nombre para el diagrama de clase, por ejemplo, "Hello". Ilustración 7 El editor del diagrama declase En el área del editor, aparecerá un editor gráfico con un espacio de trabajo para un diagrama de clase. Existen dos formas de poder
  17. 17. crear un diagrama de clase: mediante el código de ingeniería reversa existente al arrastrar y el traspaso de un archivo Java desde el Explorador del paquete al diagrama de clase o al utilizar las herramientas de dibujo disponibles en la barra de herramientas que se encuentra sobre el diagrama en blanco. Para probar el primer método, cree una nueva clase denominada Person (utilice File > New >Class ) y proporciónele los dos atributos privados que se enumeran a continuación. Listado 1. Dos atributos privados /** Person.java * @author david */ public class Person{ private String name; private Address address; /** * Returns the address. * @return Address */ public Address getAddress(){ return address; } /** * Returns the name. * @return String */ public String getName() { return name; } /** * Sets the address. * @param address The address to set */ public void setAddress(Address address){ this.address = address; }
  18. 18. /** * Sets the name. * @param name The name to set */ public void setName(String name) { this.name = name; } } (Debo confesar que yo solo escribí dos líneas para el nombre y los atributos de la dirección. Los métodos getter y de establecimiento se generaron automáticamente mediante Eclipse al hacer clic en el código fuente y al seleccionar Source > Generate Getter and Setter desde el menú desplegable). Guardar y cerrar Person.java Hello.ucd. Ilustración 8 El diagramade clase de las personas
  19. 19. Para crear una clase Java desde el UML, haga clic en New class en la barra de herramientas en la parte superior de la ventana del diagrama de clases, el tercer botón desde la izquierda y haga clic en el diagrama de clase. Cuando se abre el asistente de New class, escriba en Address el nombre de clase y haga clic en Finish. Puede agregar atributos a la clase al hacer clic derecho en el nombre de la clase u seleccionar New > Attribute. En el cuadro de diálogo New attribute, ingrese el nombre del atributo, el tipo y la visibilidad. Agregue métodos al hacer clic derecho sobre el nombre de la clase y al seleccionar New > Method. A medida que cambia el diagrama, la ventana del Source Editor que se encuentra debajo del diagrama reflejará los cambios. Finalmente, puede diagramar la relación entre las clases al hacer clic en el botón de Association (el quinto desde la izquierda) y dibujar una línea desde la clase Person hasta la clase de Address. Esto abrirá otro cuadro de diálogo donde pueden ingresarse las propiedades de la asociación (diríjase a la ayuda de EclipseUML para obtener más información acerca de la información requerida). El diagrama debe verse similar al de la Ilustración 9. Ilustración 9 Association
  20. 20. Este complemento de UML muestra varias características que son típicas de los complementos de Eclipse. En primer lugar, muestra la integración estrecha entre las herramientas. Es obvio que hay varios componentes en el trabajo; la integración con la plataforma de Eclipse y la de JDT no presentan problemas. Por ejemplo, cuando se creó la clase Person, mostró errores de sintaxis porque uno de sus atributos, Address, era indefinido. Esto desapareció una vez que se creó la clase de Address en el diagrama UML. Otra característica es la capacidad de EclipseUML de crear sobre la funcionalidad que ofrecen otros complementos — en este caso, el GEF, que proporciona herramientas para desarrollar editores visuales. Otra característica incluye la forma en la que se distribuye el complemento de EclipseUML al utilizar varios niveles de funcionalidad. El complemento básico que soporta los diagramas
  21. 21. de clase es gratuito, pero hay versiones más sofisticadas que son pagas. Arquitectura de la plataforma de Eclipse La Plataforma de Eclipse es un marco de trabajo con un conjunto poderoso de servicios que soporta complementos, como JDT y el Entorno de Desarrollo de Complementos. Consiste de varios componentes principales: un tiempo de ejecución de la plataforma, un Espacio de Trabajo, un Entorno de Trabajo, Equipo de Soporte y Ayuda. Ilustración 10 Arquitectura de la plataformade Eclipse Plataforma El tiempo de ejecución de la plataforma es el núcleo que descubre en el inicio qué complementos están instalados y crea un registro de información sobre ellos. Para reducir el tiempo de inicio y el uso de los recursos, no carga ningún complemento hasta que realmente se lo necesita. Excepto el núcleo, todo lo demás se implementa como un complemento. Espacio de trabajo El espacio de trabajo es el complemento responsable de la administración de los recursos del usuario. Este incluye todos los proyectos que crea el usuario, los archivos de esos proyectos y los cambios en los archivos y otros recursos. El espacio de trabajo también es responsable de notificar a otros complementos
  22. 22. interesados sobre los cambios en los recursos, como archivos que se crearon, eliminaron o cambiaron. Entorno de trabajo El entorno de trabajo proporciona a Eclipse una interfaz de usuario (IU). Se crea con la utilización de un Kit de Herramientas Estándar (SWT) — una alternativa no estándar para el Swing/AWT GUI API de Java — y un API, JFace con un nivel superior, construido por sobre SWT que proporciona componentes de la IU. Se ha comprobado que el SWT es la parte más polémica de Eclipse. SWT se grafica de forma más parecida a las capacidades nativas de los gráficos del sistema operativo subyacente que Swing o AWT, que no solo hace que SWT sea más rápido, sino que también permite que los programas JAVA se parezcan y se sientan más como aplicaciones nativas. El uso de esta nueva API GUI podría limitar la portabilidad del entorno de trabajo de Eclipse, pero los puertos del SWT para los sistemas operativos más populares ya están disponibles. El uso del SWT por parte de Eclipse afecta no solo la portabilidad de Eclipse — ninguna de las aplicaciones Java diseñadas con Eclipse, a menos que utilicen SWT en lugar de Swing/AWT. Soporte del equipo El componente de soporte del equipo es responsable de proporcionar soporte para el control de la versión y la gestión de la configuración. Agrega vistas según sea necesario para permitir al usuario interactuar con cualquier sistema de control de versiones (si hay) que se esté utilizando. La mayoría de los componentes no necesitan interactuar con el componente de soporte del equipo a menos que proporcionen servicios de control de versiones. Ayuda El componente de ayuda pone en paralelo la expansión de la propia Plataforma de Eclipse. De la misma forma que los
  23. 23. complementos agregan funcionalidad a Eclipse, la ayuda proporciona una estructura de navegación de complementos que permite a las herramientas agregar documentación en la forma de archivos HTML.
  24. 24. iniciando eclipse La primera vez1 que se inicia el eclipse, este pide que se le confirme en que directorio debe conservar los proyectos que se creen. Por defecto, esto es una carpeta bajo el directorio mismo en el que se encuentra el programa. Elija alguna carpeta en la unidad T:2, preferentemente creando una especial para este propósito (por ejemplo T:proyectos). Por defecto el eclipse crea una carpeta “workspace” en su mismo directorio (es decir, si eclipse está instalado en T:eclipse, el workspace queda en T:eclipseworkspace). Este comportamiento por defecto es suficiente para nuestros propósitos. Recuerde que todo el contenido de la unidad T3 SE BORRA AL TERMINAR LA SESIÓN. No olvide respaldar su trabajo, ya sea en su home (H:) o bien en otro medio como correo electrónico antes de terminar la sesión de Windows. Seleccione la casilla “Use this as the default and do notaskagain” para que no le vuelva a preguntar esto La próxima vez que utilice Eclipse. Posteriormente, se iniciará el programa, mostrándole una ventana de bienvenida y ayuda. Si lo desea, consulte la ayuda en línea que esta ventana provee para aprender más sobre eclipse y java. Por el momento, nosotros sólo la cerraremos
  25. 25. haciendo clic en la cruz a la derecha de “Welcome” para continuar. Para volver a ver esta ventana, simplemente vaya al menú “Help” y haga clic en “Welcome”. Esta ventana de bienvenida la podemos cerrar seleccionando el ícono: "Workbench", con lo que aparece el entorno de trabajo del Eclipse (si queremos nuevamente ver la ventana de bienvenida podemos activarla desde el menú de opciones: Help ->Welcome" El entorno de trabajo del Eclipse es:
  26. 26. Entorno eclipse Tras cerrar el tab4 de bienvenida, se nos presenta el ambiente de desarrollo, el cual tiene un aspecto como el mostrado en la siguiente figura Proyectos, carpetas y archivos Un proyecto es un conjunto de carpetas de archivos (No es obligatorio que tenga ambos, incluso puede tener cualquier cantidad de cada uno de ellos) que tienen alguna funcionalidad relacionada. A los archivos, carpetas y proyectos se les agrupa bajo el nombre “recursos” (“resources”, en inglés). Idealmente, todos los recursos dentro de un proyecto apuntan a resolver un mismo problema, así, por ejemplo, un proyecto “Ecuaciones” podría contar con un algún número de archivos con el objetivo de conseguir un programa que resuelva algún tipo de ecuaciones. Los archivos son principalmente archivos de código (que tienen la extensión “.java”) y son el ladrillo básico de construcción de un programa. Las carpetas
  27. 27. son más que nada para permitir organización (por ejemplo, mantener todos los archivos relacionados con ecuaciones cuadráticas en una carpeta, los de ecuaciones no lineales en otras, etc.). Antes de poder empezar a trabajar, necesitamos crear un proyecto. Para esto nos vamos al menú File / New / Project, tal como se ve en Ilustración 1, que es equivalente a hacer clic en la pequeña flecha negra al costado derecho del primer botón de la barra de herramientas y elegir “Project”. Con esto se nos presenta un cuadro que nos pregunta el tipo de proyecto que deseamos crear. Lo que nos interesa es hacer una aplicación Java que corra independientemente, por lo que elegimos la opción “Java Project” [ver Ilustración 2], y hacemos clic en “next”. El siguiente cuadro nos pide un nombre para el proyecto. Este puede ser cualquiera que deseen. Idealmente, traten de que sea corto (no oraciones), pero que a la vez sea descriptivo. Nombres como “Proyecto” suelen llevar luego a complicaciones porque no se sabe que es realmente lo que realiza. Un mejor nombre podría ser “Laboratorio 1”. En “Project layout”, seleccione la opción “Createseparatesource and output folders”. Esto facilitará la entrega del código a los ayudantes, porque dejará todo el código en una carpeta aislada dentro del proyecto. Haga clic en “Next” y nuevamente en “Next” en la siguiente ventana que aparezca, porque no necesita cambiar nada. Con esto tenemos listo nuestro primer (vacío) proyecto. Al terminar los pasos anteriores, vemos que en la vista “Package Explorer” aparece nuestro proyecto tal como puede verse en la Ilustración 3. Al expandirlo haciendo clic en el
  28. 28. signo “+” que aparece al lado del nombre vemos que ya hay algo adentro. En este caso, están las librerías de sistema, que no necesitamos conocer en detalle por ahora, por lo que simplemente las ignoraremos. Además está la carpeta “src” que es la carpeta que contendrá todo el código fuente5 (todas las clases). Pero este proyecto, así tal cual, está vacío. No hace nada. Para que haga algo, necesitamos agregar el código apropiado. A continuación desarrollaremos una aplicación básica que imprima un mensaje en pantalla Programando en Eclipse En java todo código está contenido al interior de alguna clase. Por lo anterior, si deseamos agregar alguna funcionalidad o código, debemos primer crear una nueva clase. Para conseguir esto, vamos a hacer clic en el botón “Class” dentro del menú File → New, tal como indica la Ilustración 4. A continuación veremos un cuadro de Dialogo New Java Class, como el que se aprecia en la ¡Error! No se encuentra el
  29. 29. origen de la referencia.. En este se debe especificar un nombre para la clase (nuevamente, corto, pero descriptivo. Más adelante en el curso quedará más claro el concepto de clase y los nombres para estas surgirán en forma más natural), que por el momento dejaremos como “Principal” Dado que esta es la primera clase y la que encapsula el funcionamiento de “partida” del programa, asegúrese de hacer clic en el “checkbox” “publicstaticvoidmain(String[] args)” que se encuentra hacia el final del cuadro. Tras hacer clic en el botón “Finish”, nos encontramos con una serie de cambios dentro de nuestro proyect. Inicialmente, vemos que en el “Package Explorer” aparece ahora, dentro de la carpeta “src” el paquete “(default package)” (ver Ilustración 6). Por el momento no nos preocuparemos mucho de la semántica de un paquete. Simplemente lo veremos como un conjunto de código relacionado. Dentro de éste hay un archivo, “Principal.java” que contiene la clase que acabamos de crear, “Principal”. Dentro de un archivo podríamos, bajo ciertas condiciones muy particulares, llegar a tener más de una clase, es por esto que las clasesaparecen como una lista (árbol6 en realidad) que cuelga del archivo. A su vez, los métodos de la clase son mostrados como un lista que cuelga de la clase. Más adelante en el curso se verá que son y para qué sirven los métodos. Por el momento sólo tenemos el método “main” que es el punto de entrada de nuestro programa. Cuando éste parta (el programa) lo primero que se hace es ejecutar el código que se encuentra en el método “main”. Es aquí donde incluiremos el
  30. 30. código para mostrar el mensaje de nuestra aplicación demostrativa. Junto con el cambio en el “Package Explorer” también aparece, en la parte principal del editor, el código de la clase, que por el momento no es más que la definición de esta Como se puede ver en la Ilustración 7, se agregan automáticamente comentarios que guían inicialmente el desarrollo. Por el momento ignoraremos el significado de los mismos. Para más detalles en torno a los comentarios refiérase al anexo dedicado al tema al final del documento. Un último cambio observable es que la vista “Outline” (ver Ilustración 8), que se encuentra a la derecha, se ha actualizado para mostrarnos el esquema de clases actual. Esta vista será útil cuando tengamos más clases, pero por el momento sólo nos ocupa un poco de espacio útil por lo que si lo desea puede arrastrarla por encima de el “Package Explorer”, para que quede oculta como un tab en ese mismo sector. Una vez arrastrada, puede recuperar la vista del “Package Explorer” con sólo hacer clic en el tab correspondiente. Todos los cambios anteriormente descritos son efecto de haber agregado la clase y por lo tanto están relacionados. Por ejemplo, si Ud. hace doble-clic sobre el nombre de una clase en el “Package Explorer”, el editor mostrará el código para
  31. 31. esta clase. Lo mismo ocurrirá con los métodos de estas y con otras cosas. No tenga miedo en explorar el programa. Importando librería del curso Los ayudantes del curso, pensando siempre en el bienestar de sus queridos alumnos, han encapsulado un conjunto de funcionalidad para hacerles la vida más fácil. Funcionalidad como por ejemplo, imprimir mensajes. Para poder usar esta funcionalidad, es necesario incluir en el proyecto el código preparado por lo ayudantes. Para esto, los ayudantes pondrán a su disposición (por algún medio7) un archivo llamado “iic1102.jar”. Este debe ser arrastrado por sobre el nombre del proyecto creado. Veamos este paso con un poco más de detalle. Digamos que usted ha descargado el archivo iic1102.jar y que lo tiene en el escritorio. Debemos ahora arrastrar este archivo hasta el proyecto, al interior de eclipse. Para lograr esto, se recomienda que redimensione la ventana de eclipse de forma de ver tanto el archivo descargado como eclipse tal como se indica en la Ilustración 9.
  32. 32. A continuación arrastramos el archivo sobre nuestro proyecto tal como indica la Ilustración 10. Si el procedimiento anterior fue realizado en forma correcta, entonces debiéramos haber incorporado el archivo a nuestro proyecto. Sin embargo eso no significa que estemos listos para usar las funcionalidades provístas por este. Para poder usar la funcionalidad encapsulada, debemos hacer clic derecho sobre el archivo recién incorporado, luego seleccionar en el menú emergente la opción “Ad tobuildpath” del submenú “Source” como puede verse en la Ilustración 11. Con esto el código preparado por los ayudantes queda listo para ser usado (ojo: para ser USADO. El formato en el que se distribuye este código NO PERMITE ser editado. Eso es normal, y por lo tanto hacer doble-clic sobre “iic1102.jar” sólo mostrará información sobre los nombres de las clases y funciones que hay en este archivo, pero no el código respectivo. Simplemente asegúrese de que este archivo queda insertado correctamente en el proyecto, comprobando que el icono que acompaña al archivo se transforma en un frasco
  33. 33. blanco de tapa amarilla y luego ignore su presencia por completo). Agregando código y ejecutando mi primer programa en java Cambiemos la definición del método main para que muestre un mensaje a través de un cuadro de dialogo8. Para esto, cambie el código de la clase Principal para que main(String[] args) { Interfaz.MostrarMensaje(“Este es mi primer programa en java”); } } En el código anterior se han omitido los comentarios para no entorpecer la lectura. Guarde sus cambios (apretando la tecla CTRL y la tecla S simultáneamente9) o bien mediante el menú File → Save. Ahora, haga clic con el botón derecho del mouse sobre la clase “Principal”, y elija la opción “Java Application” del submenú “Run”, como se muestra en la Ilustración 12.
  34. 34. La aplicación será compilada y cualquier error será reportado. Si todo ha salido bien, en la parte central de su pantalla debiera observar un cuadro de dialogo como el siguiente: Si ha habido errores, el eclipse le advertirá de ello y le preguntará si desea tratar de continuar con la ejecución de todas maneras. No es sabio hacerlo, por lo que se le aconseja que ante esta pregunta elija la opción “Cancel” que detendrá el intento de ejecución. Proceda entonces a revisar el tab “Problems”, que detallará una lista con todos los errores encontrados. Trate de resolver siempre el primer error de la lista primero, dado que a veces ese error gatilla los demás. Haciendo doble-click sobre el error en la lista de errores, le lleva al código, en la línea en la que se produjo el error. El mensaje asociado a este error suee ser lo suficientemente explicativo como para resolver el error muy rápido, ¡préstele atención! Respaldando su proyecto Para respaldar su proyecto, basta con respaldar la carpeta del workspaceasociada al proyecto (léase, la que tiene el mismo
  35. 35. nombre). La forma más eficiente y cómoda de hacer esto es comprimiendo dicha carpeta, porque así se beneficia por partida doble: • Solo tiene que asegurarse de copiar a un lugar seguro un único archivo • El espacio ocupado por este archivo es reducido, por estar comprimido [Opcional] Para hacer más pequeño el archivo comprimido, eliminaremos todos los archivos que se generan durante la compilación. Estos no se ven normalmente, pero son generados por el compilador en la carpeta del proyecto. Para limpiar nuestro proyecto de dichos archivos, vamos al menú “Project” y desmarcamos la opción “BuildAutomatically”, luego vamos al mismo menú y en él elegimos “Clean”. Esto abrirá una ventana preguntándonos por qué proyecto deseamos limpiar (dado que podemos tener más de un proyecto en nuestro workspace). Para asegurarnos que limpie el que nos interesa, hacemos clic en la opción que nos muestra el proyecto en el que hemos estado trabajando, y nos aseguramos que la casilla “Start a buildimmediately” NO esté marcada. Finalmente, podemos ir al menú “Project” y volver a marcar la opción. “BuildAutomatically”. Es necesario deshabilitar esta opción para que el cuadro “Clean?” permita deseleccionar la opción “Start a buildimmediately”. Si esta opción estuviese marcada (o bien, la opción “BuildAutomatically” estuviese elegida en el menú “Project”), inmediatamente tras el clean se
  36. 36. construirían de nuevo los archivos, inutilizando todo lo que acabamos de hacer. [Necesario] Habiendo limpiado el proyecto, podemos cerrar el eclipse e irnos al workspace. Para seguir con nuestro ejemplo, necesitaríamos ir a T:eclipseworkspace. Para esto, abrimos de alguna manera una ventana del explorador de windows (ya sea a traves de “MyComputer”, o en el menú inicio siguiendo “Start/AllPrograms/Accesories/Windows Explorer”, o la forma que más le acomode). Si nos paramos en la carpeta del workspace, vamos a ver todos los proyectos que en ella hay, como se aprecia en la siguiente figura. en esta, se ha hecho clic con el botón derecho sobre la carpeta del proyecto “Laboratorio 1”10. En este caso en particular, el autor tiene instalado el software de compresión “WinRAR”11, pero es posible que el lector tenga instalado otro muy popular, el “WinZIP”12. Ambos funcionan en forma muy similar, y ofrecen opciones muy similares en el menú emergente. En este caso, se ha seleccionado la opción ‘Addto “Laboratorio 1.rar”’, ya que esta opción es la más rápida. Tras hacer clic en esa opción, se produce en la misma carpeta el
  37. 37. archivo “Laboratorio 1.rar”. Este archivo es el comprimido con todo el contenido de la carpeta “Laboratorio 1”, y por lo tanto puede ser copiado a un dikette (si le cabe) o a un pendrive o mandado por mail… o lo que se le ocurra. Tenga en consideración que durante las sesiones de laboratorios, la única forma de respaldar su trabajo será a través del buzón de tareas del curso. Si usted desea obtener este archivo para revisarlo en su casa o para efectos de las recorrecciones se publicará una noticia en el sitio del curso que informará el procedimiento a seguir para conseguir este archivo.13 Recuperando un proyecto desde un archivo comprimido Tras haber ejecutado los pasos de la sección anterior, es probable que ahora necesite recuperar el proyecto a partir del archivo comprimido. Para hacer esto, es necesario descomprimir el contenido del archivo comprimido en la carpeta del workspace. Por ejemplo, si el archivo comprimido generado en la sección anterior se encuentra ya en la carpeta del workspace, basta con hacerle clic con el botón derecho y elegir la opción “ExtractHere” (o equivalente) del menú emergente. Si el archivo no está directamente en la carpeta del workspace, basta con arrastrarlo a ella con el botón derecho (esto es, hacer clic con el botón derecho sobre el archivo en el lugar donde este se encuentre originalmente, y sin soltar el botón, arrastrar el puntero del mouse por sobre la carpeta “workspace” del eclipse y soltar el botón. Con esto surgirá un
  38. 38. menú emergente similar al anterior y basta con elegir la opción “ExtractHere” o equivalente. Note que la opción “Extractto Laboratorio 1” NO sirve, porque creará una carpeta extra que entorpecerá al eclipse. Debe asegurarse que la carpeta creada sea efectivamente la que contiene el proyecto y no una carpeta que contiene otra carpeta con el proyecto. Hecho esto, estamos listos para el último paso. Inicie el eclipse si es que no lo ha iniciado ya, en él siga los pasos descritos con anterioridad para crear un nuevo proyecto. Cuando se le pregunte por el nombre ingrese el nombre del proyecto que recuperó del archivo comprimido (con exactamente el mismo nombre, es decir, si el proyecto se llama “Laboratorio 1”, no le servirá escribir acá “Laboratorio1”). Si todo ha resultado bien, en el final de la ventana de creación del nuevo proyecto aparecerá un mensaje como el que se muestra en la figura. …el cual le advierte que ya existe una carpeta con dicho nombre y que por lo tanto eclipse tratará de automáticamente detectar si es que existe un proyecto en ella, y lo agregará a la lista del “Package Explorer” si lo logra. Haciendo clic en el botón “Finish” debería estar terminado el proceso de recuperación del proyecto. Renombrando un proyecto
  39. 39. A veces, es necesario renombrar un proyecto. Y dado que eclipse mantiene información interna sobre cada proyecto, cambiar el nombre de la carpeta en el workspace no tiene los efectos que uno esperaría. Luego es mejor dejar que eclipse se encargue del trabajo sucio. Para esto, abra14 el proyecto que quiere renombrar (un proyecto puede estar “abierto” o “cerrado” en el “Packageexplorer”. Sólo se puede trabajar en los proyectos abiertos, por lo que tiene sentido tener abierto únicamente el proyecto en que se está trabajando. Para abrir (o cerrar) un proyecto, basta hacer clic con el botón derecho sobre él y elegir la opción “Open Project” del menú emergente15) y haga clic con el botón izquierdo en el nombre del proyecto. Luego, aprete la tecla F2 y cambie el nombre del proyecto en el cuadro que aparece (mostrado en la figura siguiente). En algunos casos puede aparecer un error muy feo, pero que haciendo clic en “abort” es “ignorado” con la suficiente frialdad como para que todo resulte bien. Hasta ahora no parece haber inconveniente en darle “abort”, pero el sentido común llama a revisar que el proyecto renombrado funciona bien haciendo una corrida de compilación y ejecución. Si todo funciona ok, estaría listo. Manejando errores Eclipse
  40. 40. es tremendamente expresivo en cuanto a los errores. Mientras Ud. programa, eclipse estará revisando que lo que ud. haya escrito: 1. Esté sintácticamente correcto: es decir, que no hayan caracteres indebidos en donde no deben ir, que todas las líneas terminen en “;”, que no haya espacios en donde debe haber comas, etc, etc. 2. Que los tipos coincidan: entre los tipos que se declararon para los argumentos y el retorno de una función y la llamada a esta. 3. Que no hayan variables sin declarar: es decir, que no se usen variables que no han sido declaradas previamente. Esto es parte pequeña de la gran cantidad de errores que puede detectar el eclipse en tiempo de programación. Para informarle de que hay algo raro en alguna parte del código, normalmente eclipse subraya la parte con problemas con rojo. Al posar el puntero del mouse por sobre el lugar subrayado, eclipse entrega una descripción del error que encontró. En el caso del ejemplo anterior, el problema es que falta poner “;” al final de la línea. En los mensajes de error de eclipse suele aparecer la palabra “token”. Esta palabra significa cualquier elemento del programa, como puede ser el nombre de una variable, una llave ‘{‘, un operador o cualquier elemento. En el
  41. 41. caso del ejemplo de la imagen de abajo, el token es el nombre de la variable “f1”. En este ejemplo, el error es que no se puso una coma entre la declaración de los dos argumentos. Comentarios dentro del código Usted ya se ha topado con una serie de líneas en el código que tiene colores como verde o celeste similares a los que se observan en la Ilustración 15. Los comentarios es texto que ayuda la lectura y entendimiento de un programa java. Este texto no es un código java válido y de hecho es omitido al momento de ejecutar el programa. Por lo mismo, sea generoso a la hora de escribir comentarios, tiene varios beneficios asociados entre los que se encuentran: • Debido a que los laboratorios son actividades largas, es frecuente que uno deba volver al código que escribió horas antes, y es más frecuente aún que no se recuerde completamente el sentido que tenía dicho código. El comentar
  42. 42. el código indicando que se está realizando en cada segmento de código facilita su lectura. • No tan solo usted debe leer su código, piense que hay correctores que deben revisar el correcto funcionamiento del mismo, de esta forma, es mejor entregar la mayor cantidad de facilidades al corrector de forma que él pueda realizar su labor de la forma más expedita posible. Ejemplos de comentarios útiles son: • “Ahora voy a calcular los valores promedios pedidos” • “A continuación desplegare los valores pedidos en el enunciado” Sin embargo, los siguientes son malos comentarios debido a que no ayudan realmente a la comprensión del código o bien porque no brinda información adicional relevante. • “Aquí declaro una variable” • “El siguiente es un método que retorna un valor entero” Java permite básicamente dos tipos de comentarios: • De línea • Bloques de comentario Los comentarios de línea son los indicados con un número 1 en la Ilustración 15, el comentario está defindo por los dos “slash" //. Todo lo ubicado a la derecha de estas dos barras inclinadas , hasta el final de la línea se considera un comentario y eclipse lo colorea de verde. Los comentarios de bloques son similares a los de línea, pero permiten comentar más una línea a la vez tal como se observa con un número 2 en la misma ilustración. La forma de definir estos comentarios
  43. 43. es mediante una apertura del comentario por medio de /* y un cierre del comentario definido por */. Todo lo que se encuentre al interior de estos delimitadores será considerado como un comentario y no será ejecutado18. El siguiente es un ejemplo un poco más extenso del uso de comentarios dentro del código. Sientase libre de comentar su código, le ayudará a usted mismo y a los correctores.
  44. 44. Entorno de proyectos de eclipse Es necesario crear un nuevo proyecto no sólo para desarrollar un nuevo programa de Java, sino para editar también archivos ya existentes (como por ejemplo, un programa ".java" almacenado en un diskette). Para crear un nuevo proyecto, seleccione en la línea de menús principal "File > New > Project...". También es posible seleccionar "New > Project..." haciendo clic derecho en cualquier parte una vista de Eclipse (como por ejemplo, el Package Explorer o el ResourceNavigator). Hay varios tipos de proyectos de Eclipse que pueden ser creados: • Para crear o editar programas Java, un "Java Project" debería ser creado. Nótese que dentro de un proyecto de Java también puede almacenarse toda la información relacionada con el proyecto (la cual no tiene por qué reducirse estrictamente a código fuente, sino que también puede contener documentación y otros archivos relacionados). • Los "Simple Project" sólo deberían crearse para almacenar documentos y otros archivos, pero no código Java que se desee compilar. Por ello, siempre que se creen archivos ".java" sería recomendable crear un "Java Project". • Los "Plug-in Development Project" se usan para añadir nuevos módulos y funciones al entorno Eclipse. Estos proyectos sólo son necesarios si se es un desarrollador de Eclipse. • Los proyectos de "EMF" se utilizan para crear modelos de análisis y diseño. Puesto que este tutorial se
  45. 45. centra en utilizar Eclipse para programar en Java, escogeremos crear un nuevo "Java Project" seleccionando "Java > Java Project" y haciendo clic en el botón "Next>" del asistente de creación. 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
  46. 46. directorio por defecto, los archivos del proyecto se almacenarán en el directorio "[DirectorioDeInstalación]workspace[NombreProyecto]". También es posible especificar un directorio diferente en el que guardar dichos contenidos. Pese a que en este punto es ya posible terminar la creación del nuevo proyecto haciendo clic en el botón "Finish", es recomendable pulsar de nuevo el botón "Next>" para definir explícitamente de esta manera una carpeta fuente para los archivos ".java" desde el principio. Las carpetas fuente ("Source Folders") almacenan los archivos de código fuente de Java (.java), de manera que Eclipse sepa donde encontrarlos y pueda realizar la compilación automática de los mismos cada vez que un archivo sea guardado. Para crear dicha carpeta fuente seleccione la pestaña de "Source" y pulse el botón "Add Folder...". Seleccione el proyecto recientemente creado y
  47. 47. pulse el botón "Create New Folder". Un buen nombre para esta carpeta fuente podría ser sencillamente "src". Tras especificar dicho nombre, pulse "Ok". A la pregunta de si desea actualizar la carpeta de salida de archivos compilados, debería responder afirmativamente. De este modo, los archivos ".class" que resulten de la compilación de los ".java" almacenados en la carpeta fuente irán a parar a la carpeta "bin". Pulse el botón "Finish" para terminar el proceso de creación del nuevo proyecto. Si se nos pregunta si deseamos pasar a la perspectiva de Java, deberíamos responder afirmativamente. El proyecto recién creado debería parecerse a este, tal y como lo muestra la vista "Navigator". En Eclipse 3.0 la creación de proyectos es un tanto diferente a Eclipse 2.x. Aún puede definirse una carpeta cualquiera para almacenar los proyectos. Pero ahora los pasos anteriormente expuestos acerca de la creación de una estructura adecuada de carpetas fuente y destino pueden omitirse, ya que en la nueva versión de Eclipse basta con marcar la opción "Createseparatesource and output folders" para construir de forma automática la estructura de archivos deseada.
  48. 48. Como ya se mencionó anteriormente, para editar un elemento existente debería ser primero importado dentro de un proyecto de Eclipse. Esto puede hacerse desde el menú "File >Import..." o bien pulsando con el botón derecho en cualquier punto de la vista del "Package Explorer" o del "ResourceNavigator". Para seleccionar un archivo o directorio hay que seleccionar "File system" en el sub menú de importación. Entonces sólo 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
  49. 49. original, de manera que se seguirá teniendo una copia de reserva. Sin embargo, si se usa la opción de importar un proyecto de Eclipse ya existente, los contenidos de dicho proyecto serán duplicados. Así que hay que ser especialmente cuidadoso al borrar proyectos importados del entorno de trabajo de Eclipse, ya que es posible que otras copias de backup de dicho proyecto no existan. Todo archivo creado mediante la utilización 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, sólo que seleccionando ahora la opción "Export". También es posible copiar, cortar y pegar archivos y carpetas desde Eclipse hasta los
  50. 50. 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). Una vez que se ha creado un nuevo proyecto, es hora de aprender cómo crear los diversos elementos de Java. Para seguir los pasos que se exponen a continuación 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 más útiles a la hora de crear nuevos programas en Java. Haciendo clic derecho en la carpeta fuente recientemente 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.
  51. 51. Algunos de dichos elementos pueden ser creados también realizando clic sobre los iconos del menú de la parte superior de la pantalla. Las clases de Java son los archivos ".java" que contienen el código fuente y que serán 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 la ventana de creación de clases.
  52. 52. La carpeta fuente especificada debería ser la carpeta recientemente definida (src). Si no se especifica ningún paquete para contener las clases Java, se guardarán dentro de un por defecto. El último campo obligatorio que debería ser rellenado antes de proceder a la creación de la clase Java es el propio nombre de la clase. Las convenciones de Java sugieren que el nombre de una clase debería comenzar con mayúscula. En este tutorial se ha usado el nombre "ExampleClass". También existen otros modificadores que pueden ser fácilmente añadidos a una clase desde el mismo momento de su creación. Sin embargo, estos elementos también podrían ser añadidos manualmente en otras fases más avanzadas del proceso de desarrollo. Si se pretende que la nueva clase extienda (herede de) otra clase existente, se debería especificar la clase "padre" dentro del campo "Superclass". El botón "Browse..." es de gran utilidad a la hora de encontrar clases que sean posibles candidatas para ser extendidas. Aunque Java sólo soporta herencia única (sólo puede extenderse de una única clase) sí que es posible que una clase implemente más de una interfaz. Una vez
  53. 53. más, el botón "Browse..." simplifica la tarea de seleccionar interfaces implementadas. Es interesante destacar que los archivos compilados ".class" sólo 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. File Los archivos que se crean a través de este menú suelen almacenar notas e información general. Otros archivos tales como archivos de configuración, archivos "build" de ant y similares también pueden crearse de esta manera. Crear un nuevo archivo es tan sencillo
  54. 54. 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 botón "Finish". Por defecto, archivos los archivos genéricos 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 práctica recomendada de programación es crear explícitamente una carpeta fuente donde almacenar los archivos .java con el código fuente (src), una carpeta de salida donde guardar el código compilado (bin) y una carpeta para guardar toda la documentación relacionada (docs). Para crear una nueva carpeta basta con especificar el nombre de la nueva carpeta y la carpeta que la contiene.
  55. 55. Una perspectiva de Eclipse es una agrupación 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 añadiendo nuevas vistas y cambiando su distribución en la pantalla. Las perspectivas pueden seleccionarse haciendo clic en los iconos de
  56. 56. perspectiva del lateral izquierdo 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 localización física de los recursos almacenados dentro de los proyectos Java: esta perspectiva se centra en tareas de programación, mostrando paquetes, clases, métodos y atributos en sus vistas asociadas. Plug-in development: la perspectiva de desarrollo de plug-in permite a los desarrolladores añadir nuevos módulos de Eclipse. Install/Update: permite gestión de la configuración. Muestra los componentes instalados así como sus versiones y conflictos. Debug: relacionada con la tarea de depuración. Se centra en los procesos ejecutados, puntos de ruptura, variables, salida, etc. Java Browsing: esta perspectiva permite ojear rápidamente código, proyectos, paquetes y jerarquías.
  57. 57. Interface Las interfaces son casos particulares de las clases de Java, que carecen de implementación y que se espera que otras clases implementen. Usualmente funcionan como una especie de contrato, indicando lo que la clase implementada debería hacer, mientras que los detalles de más bajo nivel corresponderían al implementador. El procedimiento de creación de interfaces es muy similar al procedimiento de creación de nuevas clases ya detallado. Aunque una interfaz no puede implementar ninguna interfaz, sí que puede extender otra interfaz mediante una relación de herencia. Package Los paquetes se declaran para almacenar y organizar los archivos de Java. El nombre de un paquete consta usualmente de varias partes separadas por 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 llevarán añadida automáticamente la declaración "package" en su código fuente. Scrapbook Page Estas "hojas de sucio" son una forma sencilla de probar fragmentos de código antes de añadirlos al programa final. Sólo
  58. 58. hay que crear una "Scrapbook Page" dentro de la carpeta deseada y escribir el código dentro de ella. No hace falta meter el código dentro de un método main para ejecutarlo. En Eclipse 3.0 las "scrapbookpages" 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 están habilitadas las funciones de auto completar dentro de las scrapbookpages. Antes de intentar ejecutar el código añadido 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 añadir. Para ejecutar el código recién creado es necesario seleccionarlo pinchando con el botón izquierdo del ratón y arrastrando hasta tener todo el código seleccionado. Luego hay que pulsar el botón derecho del ratón sobre este código seleccionado y ejecutar la opción "Execute" del menú contextual. La salida estándar de dicho proceso se mostrará dentro de la vista "Console", y otros mensajes de error se mostrarán dentro de la misma hoja de sucio. Una vez que se ha completado la prueba habría que pulsar el botón "Stop Evaluation" del menú contextual. Puesto que el editor de estas hojas de prueba no proporciona tantas funciones de ayuda a la programación como el editor de código Java, una práctica recomendada es escribir el código
  59. 59. 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 extensión ".java"). Estos archivos de código serán automáticamente compilados en archivos ".class". Puesto que todo proyecto de Java debería tener una carpeta fuente, es una práctica recomendada organizar esto desde el primer momento, como se explicó en la primera parte de este tutorial. Compilar y Detectar Errores Es importante tener en cuenta que en Eclipse los errores de compilación se muestran en tiempo real subrayando el fragmento de código adecuado con una línea roja. Y además el entorno automáticamente 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 fácilmente porque se muestran además como marcas rojas en el margen derecho del editor de código Java. También los errores y advertencias presentes en archivos ya guardados se muestran dentro de la vista de tareas (Tasks View), como se detallará posteriormente. Haciendo click en cualquiera de los dos tipos de marcadores de error llevará automáticamente hasta la línea en que el error está presente. Las advertencias (warnings) se muestran de la misma manera, pero con marcas amarillas.
  60. 60. Icono de Bombilla = Autocorregir Hemos visto como Eclipse detecta y marca todo error y advertencia de compilación. Eclipse habitualmente permite autocorregir los posibles errores haciendo clic en el icono de bombilla presente en el margen izquierdo del editor de código. Así pues, aparecerá una ventana mostrando todas las opciones. Seleccionar una opción mediante los cursores del teclado o dejar el punto del ratón sobre dicha opción abrirá una nueva ventana mostrando detalladamente las modificaciones de código que la autocorrección efectuaría. Basta con pulsar la opción seleccionada (o pulsar ENTER) para hacer que Eclipse lleve a cabo la corrección automatizada. CTRL + Espacio = Autocompletar
  61. 61. Una vez que conozca la útil función de autocompletar la usará continuamente. A través de los siguientes ejemplos prácticos aprenderá cuales son las situaciones más comunes en que esta función de ayuda a la programación resultará muy útil.  Nombres de Clases Crear referencias a otras clases dentro de la clase actual es una tarea de programación habitual. Sin embargo, algunas clases de Java tienen nombres muy largos que son difíciles de recordar. Además, es necesario añadir declaraciones de importación 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 ratón. Nótese que la sentencia de importación correspondiente se añadirá de forma automática. 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 también, 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 métodos. Pero en
  62. 62. ocasiones resulta difícil 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 expuesto. Las variables locales se marcan con el icono de una "L" gris, mientras que los atributos se marcan con un icono que puede variar según la visibilidad del atributo.  Métodos y Constructores Una vez que se ha creado un objeto Java pueden invocarse los métodos correspondientes a su clase. Sin embargo, es bastante habitual olvidar el nombre de un método en concreto, o incluso los tipos de sus parámetros y su orden. Este problema puede solucionarse fácilmente 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 añadirá la signatura del método al objeto. También es posible autocompletar la signatura de los constructores pulsando "CTRL + Espacio" tras escribir (o autocompletar) el
  63. 63. nombre de la clase seguido de un signo de apertura de paréntesis, "(". Escribir las primeras letras del modificador de un método tal como "public" o "private" y pulsar "CTRL + Espacio" le permitirá crear automáticamente una plantilla del método. Pulsar el tabulador permite saltar de un campo de la plantilla a otro, de manera que se pueda completar el tipo de retorno, el nombre del método y sus parámetros.  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 propósito de iterar sobre un array de elementos, seleccionar esta opción intentará autocompletar incluso el nombre del array.  Etiquetas de Javadoc
  64. 64. Mientras que los comentarios internos del programador se indican con una "//", los comentarios de Javadoc se inician con un "/**". Tras crear un método, añadir "/** + ENTER" sobre la signatura del método autocompletará información de Javadoc tal como "@param [nombreParámetro] [comentario]", "@return [descripciónDatosDevueltos]" y "@throws [tipoExcepción] [comentario]". Pulsar "CTRL + Espacio" dentro de un bloque "/** ... */" mostrará toda la lista de etiquetas Javadoc posibles. Menú "Source" Mediante un clic derecho en el editor de código se mostrará un menú contextual. Las funciones más importantes de su submenú "Source>" son las siguientes:  Comment and Uncomment Seleccionando esta opción se puede comentar o quitar la marca de comentario del código. Esto es especialmente útil usado con bloques de código, puesto que permite no ejecutar temporalmente partes del código sin llegar a eliminarlas. Las teclas rápidas asociadas son "CTRL + /" para añadir comentarios y "CTRL + " para eliminar dichas marcas de comentario del bloque de código seleccionado.
  65. 65. En Eclipse 3.0 estos comandos han sido sustituidos por "ToggleComment". Seleccionando este nuevo comando del menú "Source" es posible cambiar el estado del código seleccionado, pasándolo de comentario a código o viceversa. También la nueva opción "Add Block Comment" marcará el código como comentario rodeándolo con los símbolos "/*" y "*/". Mientras que seleccionar un bloque de código comprendido entre esos símbolos de comentario hará que en aparezca la opción "Remove Block Comment", la cual eliminaría los símbolos de comentario.  Format La función de formateado automático de código automáticamente indenta el código de la forma adecuada, además de llevar a cabo otras funciones de representación. Es una forma rápida de conseguir tener un código ordenado y comprensible. Las opciones del formateador de código pueden adaptarse a las preferencias personales usando "Window>Preferences> Java >CodeFormatter". Las teclas rápidas asociadas son "CTRL + Mayúsculas + F". Nótese que las funciones de indentación de código permiten identificar rápidamente qué fragmentos de código son afectados por una condición o bucle determinados, por ejemplo. Pero también es útil situar el cursor tras un paréntesis o llave, porque de esta forma se marcará el paréntesis asociado que abre o cierra el bloque con un cuadrado gris. Así pues, se verá de un vistazo qué código se encuentra realmente comprendido entre los dos paréntesis. Eclipse 3.0 permite especificar opciones avanzadas de formateo de código. La página de preferencias que permite configurar el formateo de código se ha trasladado a "Window>Preferences> Java >Code Style >CodeFormatter". Pese
  66. 66. a que las opciones se pueden configurar de acuerdo a las preferencias personales, ya vienen configuradas por defecto para cumplir las convenciones de Java.  Organise and AddImports Aunque las sentencias de importación adecuadas se muestran siempre cuando se usan las funciones de autocompletar código para completar el nombre de una clase Java, nuevas sentencias de importación pueden añadirse en cualquier momento usando la función "AddImport". Pulsar "OrganiseImports" eliminará automáticamente todas las declaraciones de importación no utilizadas, incrementando la eficiencia del código. El método abreviado del teclado es "CTRL + Mayúsculas + O".  Override and ImplementMethods Seleccionando esta opción de sombrear o implementar métodos abrirá una ventana de menú en la cual se podrán marcar los métodos de la superclase cuya signatura se desea que se añada.
  67. 67. La opción "AddConstructorsfromSuperclass"permitirá especializar todos los constructores usados.  GenerateGetter and Setter El lenguaje Java permite especificar diferentes niveles de visibilidad de atributos. Sin embargo, en programación orientada a objetos, los atributos internos de una clase deberían ser siempre privados. Esto quiere decir que no debería poder realizarse ningún tipo de modificación 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 sería utilizando un método accesor o modificador que sea público. Seleccionando "GenerateGetter and Setter" una ventana mostrando los posibles métodos que podrían crearse de acuerdo
  68. 68. con los atributos definidos aparecerá. Entonces los métodos necesarios podrían crearse simplemente seleccionándolos y pulsando "Ok".  Surroundwith try/catch block Para utilizar esta opción es necesario tener seleccionado de antemano un fragmento de código pinchando con el botón izquierdo del ratón (o pulsando Mayúsculas) y arrastrando. Activar esta opción creará un bloque "try" alrededor del código seleccionado. Tras este bloque se añadirán automáticamente los bloques "catch" adecuados, los cuales atraparán toda posible excepción que el código rodeado pueda lanzar. Por defecto se añade una sentencia de traza dentro de esos bloques "catch" de manera que sea posible identificar inmediatamente dónde se lanzó la excepción.
  69. 69. Nótese también que, cuando una excepción no es atrapada, aparecerá como texto en rojo (de la salida de error estándar) en la vista "Console". Pulsar la línea de código en que se muestra en qué línea tuvo lugar la excepción llevará directamente a ese punto del programa en el editor de código. RefactorMenu Haciendo clic derecho en el editor de código mostrará el menú contextual. A continuación se muestran las funciones más interesantes del sub menú "Refactor>".  Rename Para invocar la función de renombrado hay que tener previamente seleccionado un elemento. Marcar la opción de "updatereferences" actualizará toda referencia al nuevo elemento renombrado. Usando esta opción de "Refactor>Rename..." es como deberían renombrarse todos los elementos incluyendo los archivos ".java". Puesto que así se actualizan todas las referencias no aparecerán problemas a la hora de compilar. Al renombrar determinados elementos será posible actualizar también referencias en comentario de Javadoc, comentarios normales y cadenas de caracteres entrecomilladas, lo cual también puede resultar
  70. 70. bastante útil. La opción de "Preview" permite asegurarse de que no habrá ningún tipo de error durante la operación de renombrado.  Move Antes de seleccionar "Refactor>Move...", el archivo fuente o elemento que se desea mover deberá haber sido seleccionado. Entonces será sólo necesario seleccionar el destino de manera que se lleve a cabo la operación de mover. Esta es la forma correcta de mover archivos ya que evita problemas futuros con referencias y rutas de compilación.  ChangeMethodSignature Para modificar la signatura de un método es posible usar esta opción en lugar de hacerlo manualmente. Sólo hay que colocar el cursor dentro del método cuya signatura se desea cambiar. Esta es una forma rápida de cambiar la visibilidad, el tipo de retonro, los parámetros y su orden. Los nuevos parámetros se añaden pulsando el botón "Add" y se modifican pulsando en botón "Edit".
  71. 71.  Pull Up and Push Down 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 (pushdown) respectivamente. Seleccionar el elemento y la opción adecuada llevará a cabo esta operación de forma automatizada. Consultar la Documentación La documentación Javadoc del código que se esté actualmente programando puede ser consultada en tiempo real simplemente colocando el cursor o el puntero del ratón sobre el elemento
  72. 72. elegido. Para expandir la ventana con esta documentación basta con pulsar la tecla de función F2. La documentación Javadoc externa (como por ejemplo, la documentación oficial de las clases de Java) puede consultarse modificando dentro de las preferencias del JRE instalado ("Window>Preferences>Installed JRE") con "Edit" la ubicación del Javadoc. De esta manera, dejando el cursor sobre el nombre de la clase y pulsando "Mayúsculas + F2" se abrirá la documentación por el punto adecuado. Eclipse 3.0 dispone de una nueva vista de Javadoc ("Window> Show View... > Java >Javadoc"). Dicha vista muestra la documentación Javadoc asociada al elemento sobre el que está situado el cursor. Importar Archivos JAR
  73. 73. En ocasiones puede ser necesario importar algunos archivos Jar no incluidos por defecto en el JRE estándar para que el proyecto pueda compilar. Basta con pulsar el botón derecho del ratón sobre la carpeta adecuada, elegir "Properties>Java BuildPath", seleccionar la pestaña "Libraries", pulsar el botón "AddExternalJars" y seleccionar el archivo ".jar" o ".zip". El nuevo Jar añadido será visible en la ventana Package Explorer como un pequeño frasco. Perspectivas Una perspectiva de Eclipse es una agrupación 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 añadiendo nuevas vistas y cambiando su distribución en la pantalla. Las perspectivas pueden seleccionarse haciendo clic en los iconos de perspectiva del lateral izquierdo 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 localización física de los recursos almacenados dentro de los proyectos Java: esta perspectiva se centra en tareas de programación, mostrando paquetes, clases, métodos y atributos en sus vistas
  74. 74. asociadas. Plug-in development: la perspectiva de desarrollo de plug-in permite a los desarrolladores añadir nuevos módulos de Eclipse. Install/Update: permite gestión de la configuración. Muestra los componentes instalados así como sus versiones y conflictos. Debug: relacionada con la tarea de depuración. Se centra en los procesos ejecutados, puntos de ruptura, variables, salida, etc. Java Browsing: esta perspectiva permite ojear rápidamente código, proyectos, paquetes y jerarquías. En Eclipse 3.0 los iconos de perspectiva se han trasladado a la esquina superior derecha. También hay ahora un botón etiquetado como "Open a Perspective" que permite acceder rápidamente 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 rápida gestión de tareas pendientes. Seleccionando "Window> Show View >Tasks" se muestra esta vista. Pueden añadirse nuevas tareas haciendo clic en el botón "Addtask". Nótese que la prioridad de la tarea y su estado también pueden modificarse sin más que hacer clic en dichos campos. También los errores y las advertencias de los archivos con código guardados se muestran en esta vista.
  75. 75. Haciendo clic en la descripción de un error llevará hasta el punto exacto del código en que se encuentra dicho error. Añadir "TODO [descripción]" a un archivo Java añadirá una nueva tarea "por hacer" a la vista de tareas. Una vez más, hacer clic sobre su descripción conducirá hasta el punto exacto en que la etiqueta "TODO" se añadió. Dentro del editor de código Java las etiquetas de "TODO" pueden encontrarse rápidamente ya que se muestran como pequeñas marcas azules en el margen derecho. Hacer clic sobre estas marcas llevará directamente a la línea etiquetada. Nótese que varios procesos automatizados insertan estas etiquetas "TODO" para asegurarse de que el código 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 rápida cualquier actividad relacionada con la gestión de las tareas definidas. Navigator La ventana del navegador de recursos permite echar un vistazo a la estructura de archivos de los proyectos definidos. Nótese que esta vista es la única que muestra la carpeta de salida ("bin") así como los archivos Java compilados (".class").
  76. 76. Package Explorer La vista del explorador de paquetes muestra la estructura lógica 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 también pueden ser expandidos de modo que muestren sus métodos y atributos internos al pulsar el botón "+".  Working Set
  77. 77. Un conjunto de trabajo es un grupo de elementos que se muestran en las distintas vistas de eclipse. 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 simultáneamente 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 confusión visual. Para definir un conjunto de trabajo, basta con pulsar en el icono de menú del Package Explorer (el icono de un triángulo invertido) y seleccionar "SelectWorking 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 disponibles se muestran directamente la próxima 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 recién creado, será necesario editar el conjunto de trabajo actual ("Menú de la vista >SelectWorking Set >Edit" o directamente "EditCurrentWorking Set") y seleccionar el nuevo proyecto para que se muestre. Outline View La vista de resumen es una forma rápida de ver qué métodos i atributos se encuentran definidos dentro de una clase de Java. Los iconos asociados proporcionan información adicional de acuerdo con la visibilidad del atributo o método en cuestión. Y sólo con hacer clic en cualquiera de estos iconos conducirá a la línea de
  78. 78. código exacta en que dicho atributo o método está definido. La vista de resumen es una herramienta esencial para entender y navegar archivos Java voluminosos. Hierarchy View La vista de jerarquía 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 código y seleccionando "Open TypeHierarchy" abrirá esta vista de jerarquía. La tecla rápida asociada es "F4" En Eclipse 3.0 se ha añadido la opción "Open CallHierarchy" al menú contextual del editor de código. Tras seleccionar un método, al hacer clic en esta opción se abrirá una vista que mostrará dónde es usado dicho método. Las teclas rápidas asociadas son "CTRL + ALT + H". FastViews
  79. 79. Arrastrar una vista hasta el margen izquierdo (hasta que aparezca un icono de carpetas apiladas) convierte esta vista en una "vista rápida". Pulsar el icono de la vista rápida 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 rápida y seleccionando "Fast View" restaurará la vista a su posición original. El área por defecto en que se apilan las vistas rápidas ha sido cambiada en Eclipse 3.0. Ahora es un pequeño rectángulo situado en la esquina inferior izquierda de la pantalla. Así pues, las vistas rápidas se crean ahora arrastrando la vista dentro del rectángulo hasta que aparece un icono de una flecha dentro de un cuadrado. No obstante, la zona en que almacenar las vistas rápidas 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
  80. 80. Para realizar una búsqueda dentro de Eclipse, el menú "Search" de la barra superior de menús debería ser seleccionado. También se pueden lanzar búsquedas pulsando el icono de linterna. Hay varios tipos de búsquedas dentro de Eclipse. La búsqueda de archivos "File Search" es una búsqueda textual que puede ser ejecutada sobre archivos de todo tipo. Es equivalente a una búsqueda tradicional. La búsqueda de ayuda "HelpSearch" efectúa búsquedas dentro de la ayuda de Eclipse. La búsqueda de Java "Java Search" es similar a la búsqueda de archivos pero proporciona funciones adicionales para buscar en archivos Java. Así pues, permite buscar explícitamente por tipos, métodos, paquetes, constructores y campos, usando restricciones de búsqueda adicionales (como por ejemplo, buscar sólo el punto del código en que se declararon los elementos coincidentes). Es importante comprobar que la búsqueda se efectúa sobre los ficheros apropiados. Esto puede definirse usando el campo "scope". "Workspace" hace referencia al entorno de trabajo completo. "SelectedResources" son sólo los archivos seleccionados (es posible seleccionar más de un archivo haciendo clic izquierdo en ellos mientras se mantiene pulsada la tecla CTRL). "Working Set" es un conjunto de trabajo previamente definido. Los resultados de la búsqueda aparecen en la vista "Search". También se subrayan en gris dentro del editor de código, con una
  81. 81. 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ó. Los resultados de búsqueda se muestran como un árbol jerárquico en Eclipse 3.0. Navegar por las Vistas y los Editores Hasta ahora hemos visto una introducción de cómo utilizar las vistas de Eclipse y cómo dichas vistas ayudan a manejar la información. Es hora de explicar algunas funciones de navegación adicionales que serán útiles para encontrar rápidamente la información deseada y que permitirán presentarla adecuadamente en los diversos editores y vistas. Maximizar una Vista o Editor Basta con hacer doble clic en el título de una ventana para maximizarla. Doble clic en el título de nuevo hará que las dimensiones y posición de la ventana sean restauradas a las que tenía originalmente. En Eclipse 3.0 se ha añadido "CTRL + M"
  82. 82. como tecla rápida asociada a maximizar o restaurar la ventana del editor actual. Ir al Último Cambio El icono del menú representado como "una flecha con un asterisco" sirve para colocar el cursor en el último punto del código que fue modificado dentro del editor activo. Es habitual que tras cambiar algo de código (por ejemplo, tras escribir algunas instrucciones nuevas) movamos el cursor a otra línea para revisar otra parte del programa. Si deseáramos volver al punto en que añadimos el último cambio (que suele ser el lugar por el que "íbamos programando") tendríamos el problema solucionado con sólo pulsar este icono de "ir al último lugar editado". Las teclas rápidas asociadas son "CTRL + Q". Acciones de Navegación de los Editores Pero, ¿qué haríamos si quisiéramos volver a un punto del programa en el que no introdujimos ningún cambio (es decir, en el que situamos el cursor pero en que no escribimos o borramos ningún carácter)? O, ¿y si quisiéramos regresar al lugar en que estuvimos justo antes de editar algo en otro lugar? Las flechas de navegación del menú resolverán estos problemas. Basta con pulsar la flecha de "navegar hacia atrás" para regresar a puntos previamente visitados del programa. Y pulsando la flecha de "navegar hacia delante" recorreremos el historial de lugares visitados hacia los puntos más recientes.
  83. 83. De hecho, estas útiles acciones funcionan de forma muy similar a como lo hacen los botones de "atrás" y "adelante" de un navegador web. La opción de "atrás" sólo se activa si existen puntos de programas que se visitaron previamente. Y la opción de "adelante" se activa tras haber pulsdo el botón de "atrás". También hay que tener en cuenta que pulsando en el pequeño triángulo negro que se encuentra junto a las flechas de navegación 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 método abreviado: "ALT + F6" (comando de "siguiente editor"). Las útiles teclas rápidas asociadas a estas acciones de navegación son "ALT + IZQUIERDA" para navegar hacia atrás 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 sistemática de revisar los problemas, es interesante recordar que también puede accederse directamente a los problemas, advertencias, resultados de búsqueda y tareas pendientes sin más que hacer clic en sus marcas asociadas que aparecen en el margen derecho del editor. En Eclipse 3.0 estos botones de "ir a problema" se han sustituido por botones de "ir a anotación". Haciendo clic en el pequeño
  84. 84. triángulo negro cercano a estas flechas de navegación por anotaciones se abrirá una lista editable con los tipos de anotaciones que serán recorridas. Así pues, el uso de estos botones no está ya limitado sólo a la comprobación de problemas ya que ahora se pueden realizar también otras tareas útiles tales como, por ejemplo, comprobar sistemáticamente todas las "tareas pendientes" ("TODO") sin más que seleccionar "Tasks" en dicha lista. Ejecutar Para ejecutar un programa dentro de Eclipse hay que seleccionar "Run>Run..."del menú principal. Dentro de "Configurations" se almacenan diferentes configuraciones de ejecución. Hay cuatro tipos de configuraciones de ejecución: 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 módulos de Eclipse).
  85. 85. Así pues, para ejecutar un programa de Java normal debería seleccionarse "Java Application" y pulsar el botón "New" para crear una nueva configuración. Dentro de la pestaña "Main" hay que dar nombre a la nueva configuración seleccionar el proyecto que contiene la clase con el método main y seleccionar dicha clase. El método "main" es el punto de ejecución 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 método main (en la forma de "String[] args"), no hay más que hacer clic en la solapa de "Arguments" y escribir esos argumentos separados por espacio dentro de la zona en blanco de "ProgramArguments". Finalmente, hacer clic en el botón "Run" lanzará la ejecución del programa seleccionado. Una forma más rápida de arrancar la ejecución del programa recientemente ejecutado es pulsar en el icono de un hombre corriendo que aparece en el menú principal.
  86. 86. Pulsar la flecha próxima a este icono mostrará otras configuraciones de ejecución recientemente utilizadas. En Eclipse 3.0 el icono anterior ha sido reemplazado por una flecha blanca dentro de un círculo verde. Depurar Aunque Java no es tan difícil de depurar como otros lenguajes de programación, también es perfectamente posible que surjan complejos problemas de ejecución. Eclipse da apoyo completo a la tare de depuración a través de su perspectiva "Debug" ("Window> Open Perspective>Debug" o seleccionando el icono del "bicho" en el margen izquierdo). Dentro de esta perspectiva de depuración, haciendo clic en el margen izquierdo del editor de código aparecerá un menú contextual. Seleccionando "Add/RemoveBreakpoint" añadirá o quitará un punto de ruptura, mientras que "ToggleBreakpoint" cambiará el estado de activación del punto de ruptura. Los puntos de ruptura marcan líneas en que la ejecución del programa se detendrá de manera que sea posible comprobar el valor de las variables en ese instante, identificando así posibles errores. Haciendo clic derecho en un punto de ruptura y seleccionando "BreakpointProperties..." permitirá especificar opciones avanzadas
  87. 87. del punto de ruptura. "Hit Count" especifica que la ejecución del programa se detendrá cuando se pase por el punto de ruptura el número especificado de veces. Las condiciones de activiación detendrán la ejecución cuando la condición sea cierta o bien cuando el valor de la condición cambie. Especificar una variable como una condición de activación y seleccionar "suspendwhenvalue of conditionchanges" es una forma de "detener la ejecución en el punto de ruptura cuando dicha variable sea modificada". Las excepciones son uno de los síntomas más evidentes de errores de ejecución. Los "Java ExceptionBreakpoints" detienen la ejecución cuando salta una excepción del tipo seleccionado. Estos puntos de ruptura se activan haciendo clic en el icono "J!" de la vista de "Breakpoints" o desde el menú principal "Run". La ejecución puede detenerse cuando la excepción sea capturada, no capturada o ambas. Añadir siempre los puntos de ruptura de excepciones Java de "ArrayIndexOutOfBoundsException" (lanzada cuando el índice de una matriz se sale de sus dimensiones) y
  88. 88. "NullPointerException" (lanzada cuando se intenta acceder a una referencia que apunta a null) es una práctica de depuración recomendada. Si se desea que el programa se detenga en los puntos de ruptura definidos deberá ser ejecutado en modo depuración ("Run>Debug..."). Tras detenerse en un punto de ruptura la ejecución del programa puede continuar de diversas maneras. Haciendo clic derecho en el editor de código dentro de la perspectiva de depuración aparecerá un menú contextual con estas opciones. "Runto line" reanuda la ejecución del programa hasta que se alcanza la línea en que está el cursor. "Stepintoselection" continuará la ejecución dentro del método seleccionado siempre y cuando el código fuente del método esté disponible. La ejecución también puede reanudarse mediante un clic derecho en la ventana de "Debug" y seleccionando las opciones adecuadas, o directamente pulsando los iconos de dicha ventana. "Stepover" parará en la línea siguiente a la invocación de un método. "Resume" reanudará la ejecución normal del programa y sólo se interrumpirá en los puntos de ruptura si sus condiciones de activación se satisfacen.
  89. 89. La vista "Variables" proporciona información verdaderamente útil ya que muestra los valores que tienen actualmente las variables cuando la ejecución se detienen en un punto de ruptura. La vista de "Debug" también es útil para observar diferentes procesos que están siendo ejecutados simultáneamente, como por ejemplo, hebras. Cuando el proceso de depuración ha terminado, los procesos mostrados en la ventana de depuración se muestran como "Finished" (pueden acabarse manualmente con "Clic derecho >Terminate"). La información de ejecuciones previas puede elminarse realizando clic derecho sobre ella y seleccionando "Terminate and Remove" o "TerminateAll" más "RemoveAllTerminated".
  90. 90. Gestión de Cambios No es extraño cambiar código del programa y darse cuenta después de que la nueva versión funciona incluso aún peor que la primera versión. Ese es el motivo de que los programadores tengamos que guardar diferentes versiones del programa cada vez que introducimos un nuevo cambio. Sin embargo, esta práctica inevitable es normalmente tediosa y consume mucho tiempo. Afortunadamente, Eclipse proporciona un potente sistema de gestión de cambios y de control de versiones. Haciendo clic derecho en un archivo Java dentro del Package Explorer y selecionando "ReplaceWith> Local History" permitirá reemplazar la versión actual por una versión previamente guardada. La hora y fecha de modificación se muestran junto con dos ventanas que destacan las diferencias existentes entre ambas versiones.
  91. 91. Seleccionando "Window>Preferences>Workbench> Local History" permitirá seleccionar cuantas versiones, megas y días almacenar
  92. 92. . Así pues, se puede obtener un buen equilibrio personalizado entre seguridad y eficiencia.

×