1. Programar y ejecutar aplicaciones avanzadas Java Preparar al alumno para el Sun Certified...
-
Upload
alta-ruvalcaba -
Category
Documents
-
view
20 -
download
0
Transcript of 1. Programar y ejecutar aplicaciones avanzadas Java Preparar al alumno para el Sun Certified...
![Page 1: 1. Programar y ejecutar aplicaciones avanzadas Java Preparar al alumno para el Sun Certified Programmer 1.5 for the Java Platform Ver conceptos nuevos.](https://reader033.fdocumento.com/reader033/viewer/2022051314/54e573a94a7959ea5c8b62c0/html5/thumbnails/1.jpg)
1
![Page 2: 1. Programar y ejecutar aplicaciones avanzadas Java Preparar al alumno para el Sun Certified Programmer 1.5 for the Java Platform Ver conceptos nuevos.](https://reader033.fdocumento.com/reader033/viewer/2022051314/54e573a94a7959ea5c8b62c0/html5/thumbnails/2.jpg)
Programar y ejecutar aplicaciones avanzadas Java™
Preparar al alumno para el Sun Certified Programmer 1.5 for the Java™ Platform
Ver conceptos nuevos de Java 5.0 (Tiger)
2
![Page 3: 1. Programar y ejecutar aplicaciones avanzadas Java Preparar al alumno para el Sun Certified Programmer 1.5 for the Java Platform Ver conceptos nuevos.](https://reader033.fdocumento.com/reader033/viewer/2022051314/54e573a94a7959ea5c8b62c0/html5/thumbnails/3.jpg)
3
![Page 4: 1. Programar y ejecutar aplicaciones avanzadas Java Preparar al alumno para el Sun Certified Programmer 1.5 for the Java Platform Ver conceptos nuevos.](https://reader033.fdocumento.com/reader033/viewer/2022051314/54e573a94a7959ea5c8b62c0/html5/thumbnails/4.jpg)
Este curso desarrollará las siguientes áreas: Sintaxis del lenguaje de programación Java Conceptos de Orientación a Objetos y cómo estos
se aplican en el lenguaje de programación Java Interfaces, Clases abstractas, anidadas,
excepciones, assertions, entre otros. Multithreading Networking
4
![Page 5: 1. Programar y ejecutar aplicaciones avanzadas Java Preparar al alumno para el Sun Certified Programmer 1.5 for the Java Platform Ver conceptos nuevos.](https://reader033.fdocumento.com/reader033/viewer/2022051314/54e573a94a7959ea5c8b62c0/html5/thumbnails/5.jpg)
5
![Page 6: 1. Programar y ejecutar aplicaciones avanzadas Java Preparar al alumno para el Sun Certified Programmer 1.5 for the Java Platform Ver conceptos nuevos.](https://reader033.fdocumento.com/reader033/viewer/2022051314/54e573a94a7959ea5c8b62c0/html5/thumbnails/6.jpg)
Describir las características principales del lenguaje
Compilar y ejecutar aplicaciones Java Utilizar las API de documentación online de Java Describir constructores y sintaxis del lenguaje Describir el paradigma de Programación
Orientada a Objetos Utilizar las características de orientación a
objetos del lenguaje de programación Java Utilizar excepciones
6
![Page 7: 1. Programar y ejecutar aplicaciones avanzadas Java Preparar al alumno para el Sun Certified Programmer 1.5 for the Java Platform Ver conceptos nuevos.](https://reader033.fdocumento.com/reader033/viewer/2022051314/54e573a94a7959ea5c8b62c0/html5/thumbnails/7.jpg)
Utilizar las API de Colecciones Leer y escribir a archivos Utilizar el java.io package Describir los conceptos básicos de multithreading Desarrollar aplicaciones concurrentes Java Desarrollar programas cliente-servidor utilizando
TCP/IP
7
![Page 8: 1. Programar y ejecutar aplicaciones avanzadas Java Preparar al alumno para el Sun Certified Programmer 1.5 for the Java Platform Ver conceptos nuevos.](https://reader033.fdocumento.com/reader033/viewer/2022051314/54e573a94a7959ea5c8b62c0/html5/thumbnails/8.jpg)
8
![Page 9: 1. Programar y ejecutar aplicaciones avanzadas Java Preparar al alumno para el Sun Certified Programmer 1.5 for the Java Platform Ver conceptos nuevos.](https://reader033.fdocumento.com/reader033/viewer/2022051314/54e573a94a7959ea5c8b62c0/html5/thumbnails/9.jpg)
Describir las características fundamentales de la tecnología Java.
Escribir, compilar y ejecutar una aplicación simple de tecnología Java.
Describir la función de la Máquina Virtual de Java (JVM)
Definir el concepto de garbage collection.
9
![Page 10: 1. Programar y ejecutar aplicaciones avanzadas Java Preparar al alumno para el Sun Certified Programmer 1.5 for the Java Platform Ver conceptos nuevos.](https://reader033.fdocumento.com/reader033/viewer/2022051314/54e573a94a7959ea5c8b62c0/html5/thumbnails/10.jpg)
La tecnología Java no es solo un lenguaje de programación.
¿Qué es la tecnología Java?
10
![Page 11: 1. Programar y ejecutar aplicaciones avanzadas Java Preparar al alumno para el Sun Certified Programmer 1.5 for the Java Platform Ver conceptos nuevos.](https://reader033.fdocumento.com/reader033/viewer/2022051314/54e573a94a7959ea5c8b62c0/html5/thumbnails/11.jpg)
Java es:₋ Lenguaje de programación
₋ Entorno de desarrollo
₋ Entorno de ejecución
₋ Provee herramientas, librerías y frameworks para ayudar al desarrollador a elaborar aplicaciones más fácilmente
₋ Entorno para aplicaciones Web (Applets, JSP, Servlets, EJB, etc.
₋ Comunidad de desarrolladores.
11
![Page 12: 1. Programar y ejecutar aplicaciones avanzadas Java Preparar al alumno para el Sun Certified Programmer 1.5 for the Java Platform Ver conceptos nuevos.](https://reader033.fdocumento.com/reader033/viewer/2022051314/54e573a94a7959ea5c8b62c0/html5/thumbnails/12.jpg)
J2SE(JDK y JRE) J2EE o JEE J2ME
12
![Page 13: 1. Programar y ejecutar aplicaciones avanzadas Java Preparar al alumno para el Sun Certified Programmer 1.5 for the Java Platform Ver conceptos nuevos.](https://reader033.fdocumento.com/reader033/viewer/2022051314/54e573a94a7959ea5c8b62c0/html5/thumbnails/13.jpg)
J2SE (Java Standard Edition)₋ JRE (Java Runtime Environment) provee
un conjunto de APIs, Java Virtual Machine (JVM), y otros componentes necesarios para ejecutar applets y aplicaciones escritas en el lenguaje Java
₋ JDK (Java Development Kit) contiene a la JRE y agrega diferentes herramientas como: compiladores, debuggers necesarios para desarrollar applets y aplicaciones.
J2SE(JDK y JRE)
13
![Page 14: 1. Programar y ejecutar aplicaciones avanzadas Java Preparar al alumno para el Sun Certified Programmer 1.5 for the Java Platform Ver conceptos nuevos.](https://reader033.fdocumento.com/reader033/viewer/2022051314/54e573a94a7959ea5c8b62c0/html5/thumbnails/14.jpg)
J2EE o JEE (Java Enterprise Edition)₋ Especificación y modelo para
desarrollar aplicaciones empresariales de gran porte, especialmente orientada a un entorno Web.
₋ Contiene un modelo, arquitectura y patrones para desarrollar este tipo de sistemas.
₋ ES UNA ESPECIFICACIÓN !!₋ Diferentes empresas (entre ellas
SUN) implementan las especificaciones.
J2EE o JEE
14
![Page 15: 1. Programar y ejecutar aplicaciones avanzadas Java Preparar al alumno para el Sun Certified Programmer 1.5 for the Java Platform Ver conceptos nuevos.](https://reader033.fdocumento.com/reader033/viewer/2022051314/54e573a94a7959ea5c8b62c0/html5/thumbnails/15.jpg)
J2ME (Java 2 Micro Edition)₋ Especificación para desarrollar
aplicaciones en dispositivos móviles.
₋ Los diferentes Vendors (Nokia, Motorola, etc.) implementan la JVM (para la micro edition) permitiendo hacer desarrollos independientes al dispositivo particular.
J2ME
15
![Page 16: 1. Programar y ejecutar aplicaciones avanzadas Java Preparar al alumno para el Sun Certified Programmer 1.5 for the Java Platform Ver conceptos nuevos.](https://reader033.fdocumento.com/reader033/viewer/2022051314/54e573a94a7959ea5c8b62c0/html5/thumbnails/16.jpg)
16
![Page 17: 1. Programar y ejecutar aplicaciones avanzadas Java Preparar al alumno para el Sun Certified Programmer 1.5 for the Java Platform Ver conceptos nuevos.](https://reader033.fdocumento.com/reader033/viewer/2022051314/54e573a94a7959ea5c8b62c0/html5/thumbnails/17.jpg)
Brinda un lenguaje de fácil uso debido a que:₋ Evita muchas de las fallas de otros lenguajes₋ Es Orientado a Objetos₋ Permite a los usuarios crear código claro
Provee un ambiente interpretado que logra:₋ Velocidad en el desarrollo₋ Portabilidad de código
17
![Page 18: 1. Programar y ejecutar aplicaciones avanzadas Java Preparar al alumno para el Sun Certified Programmer 1.5 for the Java Platform Ver conceptos nuevos.](https://reader033.fdocumento.com/reader033/viewer/2022051314/54e573a94a7959ea5c8b62c0/html5/thumbnails/18.jpg)
Permite a los usuarios correr más de un hilo de ejecución a la vez
Carga las clases dinámicamente, esto es, en el momento que se necesitan
Soporta el cambio dinámico de programas en tiempo de ejecución, debido al cargado de clases de orígenes diferentes.
Provee mejor seguridad verificando módulos cargados
Independencia de la arquitectura de hardware
18
![Page 19: 1. Programar y ejecutar aplicaciones avanzadas Java Preparar al alumno para el Sun Certified Programmer 1.5 for the Java Platform Ver conceptos nuevos.](https://reader033.fdocumento.com/reader033/viewer/2022051314/54e573a94a7959ea5c8b62c0/html5/thumbnails/19.jpg)
Las siguientes características logran lo antes mencionado:
₋ La JVM – (Máquina Virtual)₋ Garbage collection₋ Seguridad de código
19
![Page 20: 1. Programar y ejecutar aplicaciones avanzadas Java Preparar al alumno para el Sun Certified Programmer 1.5 for the Java Platform Ver conceptos nuevos.](https://reader033.fdocumento.com/reader033/viewer/2022051314/54e573a94a7959ea5c8b62c0/html5/thumbnails/20.jpg)
JVM.class
.java
20
![Page 21: 1. Programar y ejecutar aplicaciones avanzadas Java Preparar al alumno para el Sun Certified Programmer 1.5 for the Java Platform Ver conceptos nuevos.](https://reader033.fdocumento.com/reader033/viewer/2022051314/54e573a94a7959ea5c8b62c0/html5/thumbnails/21.jpg)
Provee especificaciones de la plataforma de hardware
Lee los byte codes compilados que son independientes de la plataforma
Es implementada por software o hardware
21
![Page 22: 1. Programar y ejecutar aplicaciones avanzadas Java Preparar al alumno para el Sun Certified Programmer 1.5 for the Java Platform Ver conceptos nuevos.](https://reader033.fdocumento.com/reader033/viewer/2022051314/54e573a94a7959ea5c8b62c0/html5/thumbnails/22.jpg)
El mayor control de tipos es realizado cuando el código es compilado
La implementación de la JVM aprobada por Sun Microsystems debe ejecutar cualquier archivo de clase que cumpla la especificación
22
![Page 23: 1. Programar y ejecutar aplicaciones avanzadas Java Preparar al alumno para el Sun Certified Programmer 1.5 for the Java Platform Ver conceptos nuevos.](https://reader033.fdocumento.com/reader033/viewer/2022051314/54e573a94a7959ea5c8b62c0/html5/thumbnails/23.jpg)
La JVM provee las siguientes definiciones:
₋ Set de Instrucciones (CPU)₋ Conjunto de registros₋ Formato de los archivos de las clases₋ Stack₋ Recolección de espacios liberados de memoria
(Garbage-collection)₋ Área de memoria
23
![Page 24: 1. Programar y ejecutar aplicaciones avanzadas Java Preparar al alumno para el Sun Certified Programmer 1.5 for the Java Platform Ver conceptos nuevos.](https://reader033.fdocumento.com/reader033/viewer/2022051314/54e573a94a7959ea5c8b62c0/html5/thumbnails/24.jpg)
Garbage collection:₋ Rastrea y libera la memoria que no se va a utilizar
mas₋ Esto es hecho automáticamente
Si la memoria no se libera pueden darse memory leaks
En otros lenguajes, la liberación de dicha memoria es responsabilidad de los programadores
El lenguaje de programación Java provee hilos a nivel de sistema para rastrear memoria ocupada sin utilizar
24
![Page 25: 1. Programar y ejecutar aplicaciones avanzadas Java Preparar al alumno para el Sun Certified Programmer 1.5 for the Java Platform Ver conceptos nuevos.](https://reader033.fdocumento.com/reader033/viewer/2022051314/54e573a94a7959ea5c8b62c0/html5/thumbnails/25.jpg)
El entorno de aplicación Java funciona de la siguiente manera:
25
![Page 26: 1. Programar y ejecutar aplicaciones avanzadas Java Preparar al alumno para el Sun Certified Programmer 1.5 for the Java Platform Ver conceptos nuevos.](https://reader033.fdocumento.com/reader033/viewer/2022051314/54e573a94a7959ea5c8b62c0/html5/thumbnails/26.jpg)
26
![Page 27: 1. Programar y ejecutar aplicaciones avanzadas Java Preparar al alumno para el Sun Certified Programmer 1.5 for the Java Platform Ver conceptos nuevos.](https://reader033.fdocumento.com/reader033/viewer/2022051314/54e573a94a7959ea5c8b62c0/html5/thumbnails/27.jpg)
Realiza tres tareas básicas:
₋ Cargar el código
₋ Verificar el código
₋ Ejecutar el código
27
![Page 28: 1. Programar y ejecutar aplicaciones avanzadas Java Preparar al alumno para el Sun Certified Programmer 1.5 for the Java Platform Ver conceptos nuevos.](https://reader033.fdocumento.com/reader033/viewer/2022051314/54e573a94a7959ea5c8b62c0/html5/thumbnails/28.jpg)
Carga todas las clases necesarias para la ejecución del programa
Mantiene las clases del sistema de archivos local en “namespaces” separados
Previene spoofing
Asignación de memoria en tiempo de ejecución
28
![Page 29: 1. Programar y ejecutar aplicaciones avanzadas Java Preparar al alumno para el Sun Certified Programmer 1.5 for the Java Platform Ver conceptos nuevos.](https://reader033.fdocumento.com/reader033/viewer/2022051314/54e573a94a7959ea5c8b62c0/html5/thumbnails/29.jpg)
Nos asegura que:₋ El código sigue la especificación de la JVM₋ El código no viola la integridad del sistema₋ El código no tenga operaciones que causen
stack overflows or underflows₋ Los tipos de parámetros de todas las
operaciones sean correctos₋ No ocurran conversiones de datos ilegales
(convertir un entero en un puntero)
29
![Page 30: 1. Programar y ejecutar aplicaciones avanzadas Java Preparar al alumno para el Sun Certified Programmer 1.5 for the Java Platform Ver conceptos nuevos.](https://reader033.fdocumento.com/reader033/viewer/2022051314/54e573a94a7959ea5c8b62c0/html5/thumbnails/30.jpg)
30
![Page 31: 1. Programar y ejecutar aplicaciones avanzadas Java Preparar al alumno para el Sun Certified Programmer 1.5 for the Java Platform Ver conceptos nuevos.](https://reader033.fdocumento.com/reader033/viewer/2022051314/54e573a94a7959ea5c8b62c0/html5/thumbnails/31.jpg)
IDE (Integrated Development Environment)₋ Utilizaremos Eclipse
Eclipse – www.eclipse.org – Versión: Helios Java jdk6 -
http://www.oracle.com/technetwork/java/javase/downloads/index.html
31
![Page 32: 1. Programar y ejecutar aplicaciones avanzadas Java Preparar al alumno para el Sun Certified Programmer 1.5 for the Java Platform Ver conceptos nuevos.](https://reader033.fdocumento.com/reader033/viewer/2022051314/54e573a94a7959ea5c8b62c0/html5/thumbnails/32.jpg)
Un programa consiste en una o más clases. Una clase contiene uno o más métodos. Un método contiene sentencias. Uno de los métodos debe ser el llamado main(),
que es donde comienza la ejecución del programa.
32
![Page 33: 1. Programar y ejecutar aplicaciones avanzadas Java Preparar al alumno para el Sun Certified Programmer 1.5 for the Java Platform Ver conceptos nuevos.](https://reader033.fdocumento.com/reader033/viewer/2022051314/54e573a94a7959ea5c8b62c0/html5/thumbnails/33.jpg)
TestGreeting.java// // Ejemplo aplicación “Hola Mundo“ // public class TestGreeting{ public static void main (String[] args) { Greeting hola = new Greeting(); hola.greet(); } }Greeting.java // La declaración de la clase Greeting. public class Greeting { public void greet() { System.out.println(“Hola Mundo”); } }
33
![Page 34: 1. Programar y ejecutar aplicaciones avanzadas Java Preparar al alumno para el Sun Certified Programmer 1.5 for the Java Platform Ver conceptos nuevos.](https://reader033.fdocumento.com/reader033/viewer/2022051314/54e573a94a7959ea5c8b62c0/html5/thumbnails/34.jpg)
Compilar TestGreeting.java₋ javac TestGreeting.java
Greeting.java es compilado automáticamente
Ejecutando una aplicación₋ java TestGreeting
Encontrar errores comunes de compilación y ejecución
34
![Page 35: 1. Programar y ejecutar aplicaciones avanzadas Java Preparar al alumno para el Sun Certified Programmer 1.5 for the Java Platform Ver conceptos nuevos.](https://reader033.fdocumento.com/reader033/viewer/2022051314/54e573a94a7959ea5c8b62c0/html5/thumbnails/35.jpg)
En tiempo de compilación – compile-time-errors En tiempo de ejecución – run-time-errors Lógicos – logical errors
35
![Page 36: 1. Programar y ejecutar aplicaciones avanzadas Java Preparar al alumno para el Sun Certified Programmer 1.5 for the Java Platform Ver conceptos nuevos.](https://reader033.fdocumento.com/reader033/viewer/2022051314/54e573a94a7959ea5c8b62c0/html5/thumbnails/36.jpg)
javac: Command not found
Greeting.java:4: cannot resolve symbol₋ symbol : method printl (java.lang.String)₋ location: class java.io.PrintStream₋ System.out.printl(“Hola Mundo");
TestGreet.java:4: Public class TestGreeting₋ must be defined in a file called₋ “TestGreeting.java”
36
![Page 37: 1. Programar y ejecutar aplicaciones avanzadas Java Preparar al alumno para el Sun Certified Programmer 1.5 for the Java Platform Ver conceptos nuevos.](https://reader033.fdocumento.com/reader033/viewer/2022051314/54e573a94a7959ea5c8b62c0/html5/thumbnails/37.jpg)
Can’t find class TestGreeting
Exception in thread "main“java.lang.NoSuchMethodError: main
37
![Page 38: 1. Programar y ejecutar aplicaciones avanzadas Java Preparar al alumno para el Sun Certified Programmer 1.5 for the Java Platform Ver conceptos nuevos.](https://reader033.fdocumento.com/reader033/viewer/2022051314/54e573a94a7959ea5c8b62c0/html5/thumbnails/38.jpg)
38
![Page 39: 1. Programar y ejecutar aplicaciones avanzadas Java Preparar al alumno para el Sun Certified Programmer 1.5 for the Java Platform Ver conceptos nuevos.](https://reader033.fdocumento.com/reader033/viewer/2022051314/54e573a94a7959ea5c8b62c0/html5/thumbnails/39.jpg)
39
![Page 40: 1. Programar y ejecutar aplicaciones avanzadas Java Preparar al alumno para el Sun Certified Programmer 1.5 for the Java Platform Ver conceptos nuevos.](https://reader033.fdocumento.com/reader033/viewer/2022051314/54e573a94a7959ea5c8b62c0/html5/thumbnails/40.jpg)
Test1.java
public class Test1 {public static void main(String[] args) { System.out.println("What's wrong with this program?");
}}public class TestAnother1 { public static void main(String[] args) { System.out.println("What's wrong with this program?"); }}
40
![Page 41: 1. Programar y ejecutar aplicaciones avanzadas Java Preparar al alumno para el Sun Certified Programmer 1.5 for the Java Platform Ver conceptos nuevos.](https://reader033.fdocumento.com/reader033/viewer/2022051314/54e573a94a7959ea5c8b62c0/html5/thumbnails/41.jpg)
Test1.java – Solución
public class Test1 { public static void main(String[] args) { System.out.println("What's wrong with this program?"); }}
// Si se declara una clase pública en un archivo fuente, el archivo y la clase pública
// deben llamarse igual. El ejemplo compilaría si se removiera el modificador public
// de la segunda clase o si la misma se moviera a otro archivo fuente.
class TestAnother1 { public static void main(String[] args) { System.out.println("What's wrong with this program?"); }}
41
![Page 42: 1. Programar y ejecutar aplicaciones avanzadas Java Preparar al alumno para el Sun Certified Programmer 1.5 for the Java Platform Ver conceptos nuevos.](https://reader033.fdocumento.com/reader033/viewer/2022051314/54e573a94a7959ea5c8b62c0/html5/thumbnails/42.jpg)
Objetivos del curso y contenido general. Qué es la tecnología Java y sus
características. Cómo está compuesta? Funcionamiento de JVM y GC. Compilación y ejecución. Ejemplos de clases. Tipos de errores.
42
![Page 43: 1. Programar y ejecutar aplicaciones avanzadas Java Preparar al alumno para el Sun Certified Programmer 1.5 for the Java Platform Ver conceptos nuevos.](https://reader033.fdocumento.com/reader033/viewer/2022051314/54e573a94a7959ea5c8b62c0/html5/thumbnails/43.jpg)
Wikipedia₋ http://es.wikipedia.org/wiki/Compilador₋ http://en.wikipedia.org/wiki/Just-in-
time_compilation
AJPDSOFT₋ http://www.ajpdsoft.com/modules.php?
name=news&file=article&sid=270
Java₋ http://www.java.com/es
43