PCJ Sesión 10: Development

1,559 views

Published on

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,559
On SlideShare
0
From Embeds
0
Number of Embeds
6
Actions
Shares
0
Downloads
24
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

PCJ Sesión 10: Development

  1. 1. PCJ: Proyecto Certifícate en Java Sesión 10 Development Domingo Suárez Torres @domix domix
  2. 2. DISCLAIMER El contenido del curso se obtuvo del libro de certificación No hay mucho por ver, algunas opciones NO estoy certificado <-- OJO
  3. 3. OBJETIVOS  Uso de paquetes e imports  Determinar comportamiento en tiempo de ejecución para clases y linea de comandos  Usar clases en archivos JAR  Usar CLASPATH para compilar
  4. 4. OBJETIVOS DE LA CERTIFICACIÓN Usar los comandos 'javac' y 'java'
  5. 5. COMPILAR CON 'JAVAC'  Javac [options] [source files]
  6. 6. Fuentes
  7. 7. Binario
  8. 8. Varios pasos en el proceso
  9. 9. OPCIONES DE ‘JAVAC’ Por omisión el compilador escribe los archivos ‘.class’ en el mismo directorio del ‘.java’ Es buena practica poner los ‘.class’ en un directorio diferente La opción ‘-d’ nos permite definir el directorio destino de los ‘.class’
  10. 10. ¡¡A trabajar!!
  11. 11. CÓDIGO FUENTE http://github.com/synergyj/pcjDevClass http://github.com/synergyj/pcjDevClass/zipball/master
  12. 12. DISTRIBUCIÓN
  13. 13. INSTRUCCIONES LAB01 Usar una Terminal Entrar en el directorio lab01/src Ejecutar el comando: javac -d ../classes org/javamexico/pcj/dev/UnaClase.java Observar la distribución generada
  14. 14. DISTRIBUCIÓN GENERADA
  15. 15. EJERCICIO Compilar para Java 1.4, 1.5 y 6 Usar la opción ‘-source’ y ‘-target’
  16. 16. EJECUTAR APLICACIONES Usamos el comando ‘java’ una vez que las clases están ya compiladas Es importante entender las opciones ‘-classpath’ o ‘-cp’ y ‘-D’
  17. 17. Ejecución
  18. 18. INSTRUCCIONES LAB02 Usar una Terminal Entrar en el directorio lab02 Ejecutar el comando: javac -d classes src/org/javamexico/pcj/dev/UnaClase.java Ejecutar la aplicación java -cp classes/ org.javamexico.pcj.dev.UnaClase Ser feliz :D
  19. 19. DEFINIENDO PROPIEDADES Ejecutar la aplicación definiendo algunas propiedades java -Djug=javaMexico -cp classes/ org.javamexico.pcj.dev.UnaClase java -DjugDes="java Mexico" -cp classes/ org.javamexico.pcj.dev.UnaClase
  20. 20. CLASSPATH: DETALLES El orden de definición importa No es lo mismo que Cuidado :)
  21. 21. Paquetes
  22. 22. PAQUETES El nombre completamente calificado de la clase incluye el paquete El nombre de la clase, solo es un alias
  23. 23. INSTRUCCIONES LAB03 Usar una Terminal Entrar en el directorio ‘lab03/src’ Ejecutar el comando: javac -d ../classes/ org/javamexico/pcj/dev/UnaClase.java Ejecutar la aplicación en ‘lab03’ java -cp classes/ org.javamexico.pcj.dev.UnaClase Ser feliz :D
  24. 24. EJERCICIO En el directorio del lab03 Limpiar el directorio de ‘classes’ Cambiar la clase Persona de la clase UnaClase Observar el resultado
  25. 25. jars
  26. 26. JARS Son archivos con formato ZIP para mantener juntos una serie de clases ‘.class’ y recursos necesarios, ‘.xml’, ‘.properties’, ‘.png’ JAR significa Java ARchive Tienen el formato ZIP Sirven para poder distribuir mas fácilmente las aplicaciones
  27. 27. COMANDO ‘JAR’ Muy parecido al ‘tar’ de UNIX
  28. 28. INSTRUCCIONES LAB04 Usar una Terminal Entrar en el directorio ‘lab04/src’ Ejecutar el comando: javac -d ../classes/ org/javamexico/pcj/dev/UnaClase.java Empacar la aplicación desde ‘lab04’ jar -cf elJar.jar -C classes/ org Ser feliz :D
  29. 29. STATIC IMPORTS Son una mejora introducida en Java 5 Para simplificar el uso de tipos y métodos estáticos
  30. 30. ¿Tiempo extra?
  31. 31. ¿Alguna pregunta?
  32. 32. ¿Aburrido?
  33. 33. Suerte en el examen
  34. 34. Gracias y sean felices
  35. 35. CREDITOS DE FOTOS http://bit.ly/a3exkh http://bit.ly/90ru9v http://bit.ly/9r1Gdo http://bit.ly/b7pdtd http://bit.ly/andLD3 http://bit.ly/9oxgJ6 http://bit.ly/cNlrHB http://bit.ly/a7I71y http://bit.ly/deRCZQ http://bit.ly/criJbB http://bit.ly/ac0ibE http://bit.ly/9Y9IfW http://bit.ly/aKqh3q

×