JDeveloper

JDeveloper
Información sobre la plantilla
Jdeveloper.png
entorno de desarrollo integrado desarrollado por Oracle Corporation para los lenguajes Java, HTML, XML, SQL, PL/SQL, Javascript, PHP, Oracle ADF, UML y otros.

JDeveloper, entorno de desarrollo integrado desarrollado por Oracle Corporation para los lenguajes Java, HTML, XML, SQL, PL/SQL, Javascript, PHP, Oracle ADF, UML y otros. Era un software propietario pero gratuito desde 2005.

Historia de JDeveloper

Las primeras versiones de 1998 estaban basadas en el entorno JBuilder de Borland, pero desde la versión 9i de 2001 está basado en Java, no estando ya relacionado con el código anterior de JBuilder. Las últimas versiones estables son:

  • Para JDK 6: 11.1.1.2.0 (noviembre de 2009)
  • Para JDK 5: 10.1.3.5 (agosto de 2009).

Características de Jdeveloper

  • Es un entorno gratis, aunque previamente se debe suscribir para poder descargarlo.
  • Netamente desarrollado para Java.
  • Posee diagrama de clases(UML).
  • Funciona en los siguientes sistemas operativos: Windows, Linux, Mac OSX.

Ventajas de JDeveloper

Interfaz Gráfica de JDeveloper
  • Mejora de productividad: wizards para generar código repetitivo, arquitectura de aplicaciones preestablecidas, etc
  • ADF: Desarrollo de formularios web WYSIWYG, basado en composición de layouts.
  • Weblogic: buena integración si es este el Servidor que utilizas, en tiempo de desarrollo, y para aprovechar todas sus capacidades de servidor JEE (JAX-WS, BPM, Seguridad).
  • Oracle DDBB: Unifica el desarrollo de DDBB con el de la aplicación .


Ejemplo de JDeveloper

SDE de JDeveloper

Procedimiento a Seguir con el método de fibonacci

1.Crear una carpeta de trabajo.
Debemos crear una carpeta en nuestro equipo (por ejemplo de nombre lab1) para guardar en ella todo lo que generemos. En ella a su vez haremos cuatro subcarpetas: misclases, misfuentes, misproyectos y misdocs. No es obligatorio que tengan esos nombres, pero sí conviene que estén en distintos directorios para tenerlo más organizado.


2. Abrir el Entorno de Desarrollo Integrado del JDeveloper.

2.1. Crear un nuevo espacio de trabajo (workspace).
El concepto de espacio de trabajo es similar al de “escritorio” donde tenemos a la vista uno o varios proyectos en los que se está trabajando en un momento dado, y que pueden formar parte de la aplicación que se está desarrollando.

a) Dado que se desea crear una nueva aplicación vamos a cerrar todo lo que se encuentre abierto en la herramienta (los posibles proyectos y clases Java actualmente abiertas y que forman el espacio de trabajo actual). Para cerrar un proyecto, espacio de trabajo o clase Java hay que posicionarse sobre el mismo en la ventana System-Navigator y cerrarlo con la opción File => Close (o bien, pulsando al icono con una X en rojo).

b) Para crear un nuevo espacio de trabajo ejecutaremos desde el Menú de Comandos: File/ New. En la ventana que aparece, elegiremos la categoría Projects y el Item Workspace. Pinchamos en OK y se abre una nueva ventana. Pinchamos en Browse y seleccionamos la carpeta que hemos creado en el paso 1 (lab1). El espacio de trabajo se puede guardar en un fichero con extensión .jws (por ejemplo lab1.jws). Para terminar, nos aseguramos que ninguna de las opciones de abajo está seleccionada (para no introducir ahora un proyecto en el espacio de trabajo) y pinchamos en OK.

2.2. Crear un nuevo proyecto vacío utilizando el asistente.
Se puede crear un nuevo proyecto con File/New y seleccionando dentro de la categoría Projects: “Project Containing a New Application”. Hay que dar un nuevo nombre al proyecto, por ejemplo lab1.jpr, pero aseguraros de que se va a guardar dentro de la subcarpeta creada anteriormente misproyectos. Los proyectos se guardan en ficheros con extensión .jpr. A continuación (pinchar en next) hay que indicar tres datos:

a) El primero es el paquete (package) por defecto del proyecto (todas las clases Javas creadas en el proyecto serán incluidas automáticamente en dicho paquete). Escoged por ejemplo el siguiente nombre: laboratorio1.

b) El segundo es el directorio donde se van a guardar todos los programas fuentes Java (ficheros .java) que se creen en el proyecto. Escoged en este caso el subdirectorio misfuentes. Nota: en realidad los fuentes Java se guardarán en el subdirectorio misfuentes\laboratorio1. Para ello pinchad en Add entry, y seleccionar el directorio en cuestión. Para terminar, eliminad el directorio que ponía JDeveloper por defecto, de tal manera que sólo quede el directorio que queremos.

c) El tercero es el directorio donde se van a guardar todas las clases compiladas Java (ficheros .class). Escoged en este caso el subdirectorio misclases. Nota: en realidad las clases Java se guardarán en el subdirectorio misclases\laboratorio1.

A continuación clic en Finish para crear nuevo proyecto. Veremos que aparece una nueva ventana en la que podemos definir los datos de nuestra nueva aplicación. Pero, en nuestro caso, pincharemos en Cancel, ya que vamos a crear las clases manualmente.

2.3. Crear una nueva clase Java que calcule el fibonacci de un número.
Para ello se hace File/New y se escoge dentro de la categoría General => Simple Files el item correspondiente a Java Class . Hay que indicar el nombre de la clase, por ejemplo Fibonacci. Si activamos los atributos opcionales “public”, “generate default constructor” y “generate main function”. Si ahora hacemos doble click dentro del Panel de Navegación del Workspace, sobre el icono de Fibonacci.java, veremos que JDeveloper ha generado algo de código de manera automática y tal vez algunos comentarios con el estilo Javadoc.

2.4. Introducir el código.
En la ventana de Fibonacci.java añadiremos el método calcFibonacci y rellenaremos el método principal main:

2.5. Compilar la aplicación.
Para ello utilizar el comando Project => Make o Project => Rebuild seleccionando el workspace o el proyecto. Existen dos iconos que permiten hacer lo mismo. Con el comando “Make” se compila solamente aquellas clases fuente que han cambiado, y con el comando “Rebuild” se compilan todas, hayan cambiado o no, por lo que en general será más rápido compilar con “Make”. Comprobar que se ha creado la clase Fibonacci.class en el directorio misclases\laboratorio, y que se ha guardado el fichero fuente en el fichero Fibonacci.java en el directorio misfuentes\laboratorio. Esto ficheros son guardados dentro de la carpeta laboratorio1 porque la primera instrucción de la clase Fibonacci es: package laboratorio1.

2.6. Ejecutar la aplicación.
Para ello utilizar el comando Run: la opción Run => Run lab1.jpr, o bien el icono con forma de semáforo, estando posicionados en el proyecto lab1.jpr en la ventana System - Navigator. En el Área de Mensajes de Texto nos muestra cómo lo ejecuta.Si no vemos que se nos muestre el resultado de la ejecución, abrir la ventana de mensajes (View/Log Window). Nota: si no hubiéramos compilado previamente la aplicación, entonces, lo haría antes de ejecutar, por lo que podríamos habernos ahorrado el paso previo. Si nos fijamos tenemos la línea de comandos que nos ejecuta la aplicación y a continuación en la línea siguiente nos escribe el resultado de la operación. Probar la aplicación y ver si hay algún problema.

2.7. Intentar calcular el Fibonacci de 46, 47, 48.
Para ejecutar con distintos valores se puede hacer de varias formas:

a) Modificando la instrucción int numero = XXX; del método main de Fibonacci

b) Pasando como parámetro al programa el valor que sea, para lo que hay que sustituir la instrucción int numero = 4; del método mainde Fibonaccipor esta:
int numero = Integer.parseInt (args[0]); El parámetro que se le pasa al programa se escribe así: seleccionar Project / Project Settings... escoger la solapa “Configurations/Developer/Runner” y poner el parámetro en la caja de texto “Program Arguments".

c) También se puede leer de la entrada estándar el número Para ello, hay que usar algunas clases del paquete java.io import java.io.* Abrir la entrada estándar para leer de ella: BufferedReader entrada = new BufferedReader(new InputStreamReader(System.in)); Leer de la entrada estándar en una variable String: String num = entrada.readLine(); Y transformar el string en un número entero: int numero = Integer.parseInt(num); En estos últimos dos casos hay que tener cuidado y definir qué hacer cuando se produzcan excepciones (no se puede leer, la entrada no es un número, etc.) Para leer la entrada estándar, en tiempo de ejecución, hay que configurar el JDeveloper: Project => Project Settings => Runner => Options y hacer click en "Allow Program Input" En tiempo de ejecución, la entrada se realizará en una caja de texto etiquetada con Input (en la parte inferior de la pantalla).

3. Ejecutar la aplicación fuera de JDeveloper
Invocando directamente a la máquina virtual Java. Para ello hay que:

1) Lanzar un intérprete de comandos (Menú Inicio del Sistema Operativo => Ejecutar => cmd)

2) Asegurarse de que la herramienta JAVA se puede ejecutar en dicho intérprete de comandos. Escribir el comando javay ver si lo encuentra o no. Si no lo encuentra hay que modificar la variable de entorno PATH del sistema. El PATH se puede cambiar en el PANEL DE CONTROL => Sistema => Seleccionar solapa “Opciones Avanzadas” => Variables de Entorno. Ahí hay que añadir o editar la variable de entorno de usuario PATH para que contenga el directorio donde se encuentra java.exe. Una manera de encontrar la utilidad JAVA es seleccionar el enlace directo a JDeveloper (jdev.exe), hacer click con el botón derecho => Propiedades => “Buscar Destino”. Ese directorio será DIR_JDEVELOPER\jdev\bin. Pues bien, la herramienta jar se encuentra en el directorio: DIR_JDEVELOPER\jdk\bin. Una vez modificado el PATH, volver a lanzar un intérprete de comandos y comprobar que se ejecuta JAVA.

3) Posicionarse en el directorio del CLASSPATH(en nuestro caso en misclases) (con el comando cddel sistema operativo) donde se encuentran todos los ficheros .class, y ejecutar la clase laboratorio1.Fibonacci. Java laboratorio1.Fibonacci

4. Crear una interfaz de usuario gráfica.
Para ello escoger File/ New y dentro de la categoría Client Tier => Swing/AWT seleccionar un Frame. Darle un nombre (por ejemplo FibFrame) y añadir las opciones que se deseen (título, añadir menú, about box, etc.). Se pueden escoger frames estándar de las librerías de Java como AWT o SWING, y otros menos estándar, propios de JDeveloper, pinchar en OK. Se puede comprobar que se ha generado una clase fuente Java con el mismo nombre dado al frame y extensión .java (FibFrame.java). Es posible que se haya generado otra clase dependiendo de si se ha escogido la opción “ About Box”. En ambos casos se ha generado código Java de manera automática. Se puede continuar generando código de manera visual si seleccionamos el frame (haciendo doble click sobre él en el navegador de objetos), pinchamos con el botón derecho y seleccionamos UI Editor , como se va a ver en el siguiente punto.

4.1. Diseñar la interfaz del frame.
Vamos a diseñar una interfaz gráfica sencilla que nos permita ejecutar la clase Fibonacci anterior. Para ello insertaremos una serie de etiquetas, que nos indicarán los datos que introduciremos en los cuadros de texto que pondremos a su derecha. Por último un botón que al apretarlo con el ratón nos ponga en el segundo campo de texto el número de la serie de Fibonacci correspondiente al número que introduciremos en el primero. Para todo ello elegimos en la Paleta de Componentes la solapa AWT (en el caso en que hayamos escogido un java.awt.Frame), y le indicamos que la propiedad Layout va a ser null (selecionando el modo UI Editor) , para indicar que no queremos un administrador de diseño y así poder colocar los componentes gráficos en donde deseemos dentro del Frame. Para insertar componentes AWT en el frame seleccionar el componente deseado de la Paleta de Componentes y luego dentro del frame hacer click con el botón izquierdo del ratón, modificándolos hasta conseguir el tamaño deseado. Añadimos las etiquetas y los cuadros de texto, cambiando las propiedades necesarias para que contengan en el caso de las etiquetas ( Label) el texto que deseemos presentar, y en el caso de los campos de texto (TextField) para que no aparezca nada en ellos, en ambos se hace en la propiedad text. Añadimos un botón (Button ) de la misma manera y cambiamos el texto de manera que nos indique lo que debemos de hacer.

4.2. Programar la respuesta a eventos.
Hay que añadir el código que debe ejecutarse cuando se pulse el botón. Para ello hay que seleccionar primero el botón en la ventana de diseño del frame, y después, en el inspector, hay que pulsar la solapa de eventos (events) y escoger el evento apropiado (mouseClicked). A continuación se puede escribir un nombre para el método que tratará dicho evento, aunque también podemos dejar el que nos crea por defecto. Tras pulsar un return, JDeveloper situará el cursor en la ventana de edición del código fuente correspondiente al frame, justo en el método de respuesta al evento de que se trate. En este punto se debe introducir el código necesario, que puede ser el siguiente: int numero = Integer.parseInt(textField1.getText()); textField2.setText(Integer.toString(Fibonacci.calcFibonacci(numero)));

4.3. Salvar los ficheros.
Como siempre, es conveniente de vez en cuando salvar los ficheros fuente Java, proyectos, workspaces, para no llevarnos disgustos. En especial es cierto en el caso de trabajar con JDeveloper ya que de vez en cuando se queda colgado… Para ello hay que hacer File / Save All o bien hacer click en el icono correspondiente.

4.4. Añadir una clase principal
que contenga la aplicación y que tenga asociada la interfaz gráfica anterior. Para ello hay que hacer File/New y dentro de Client Tier => Swing/AWT escoger Application, darle un nombre (por ejemplo Principal), e indicar que se le desea añadir un frame por defecto. Seleccionar la opción “Existing frame ” y, tras pulsar el botón “Browse” localizar el frame con la interfaz gráfica. Conviene dejar activa la caja de comprobación “Center frame on screen” para que el frame aparezca justo en el centro del monitor cuando se ejecute la aplicación.

4.5. Ejecutar la aplicación.
Como hay más de una clase que tiene un método main, hay que seleccionar previamente en el navegador de objetos la clase con la aplicación (Principal), antes de hacer Run.

Fuentes