introduccion java.ppt
TRANSCRIPT
![Page 1: Introduccion Java.ppt](https://reader034.vdocuments.net/reader034/viewer/2022042700/5572144f497959fc0b943ce7/html5/thumbnails/1.jpg)
INTRODUCCIÓN A JAVA
![Page 2: Introduccion Java.ppt](https://reader034.vdocuments.net/reader034/viewer/2022042700/5572144f497959fc0b943ce7/html5/thumbnails/2.jpg)
ÍNDICE
.2
• ¿Qué es Java?
• La plataforma Java 2
• La Máquina Virtual de Java
• Características principales
• ¿Qué ventajas tengo como desarrollador?
• Bibliografía
![Page 3: Introduccion Java.ppt](https://reader034.vdocuments.net/reader034/viewer/2022042700/5572144f497959fc0b943ce7/html5/thumbnails/3.jpg)
¿QUÉ ES JAVA?
.3
La tecnología Java es un lenguaje de programación y una
plataforma.
![Page 4: Introduccion Java.ppt](https://reader034.vdocuments.net/reader034/viewer/2022042700/5572144f497959fc0b943ce7/html5/thumbnails/4.jpg)
LA PLATAFORMA JAVA 2
.4
• Una plataforma software que se ejecuta sobre otra plataforma hardware/software.
• La Máquina Virtual Java La interfaz de Programación
(JVM) de Aplicaciones (API)
Intérprete de Java Conjunto de clases ya desarrolladas
![Page 5: Introduccion Java.ppt](https://reader034.vdocuments.net/reader034/viewer/2022042700/5572144f497959fc0b943ce7/html5/thumbnails/5.jpg)
LA PLATAFORMA JAVA 2
.5
![Page 6: Introduccion Java.ppt](https://reader034.vdocuments.net/reader034/viewer/2022042700/5572144f497959fc0b943ce7/html5/thumbnails/6.jpg)
• Sencillo
• Orientado a objetos
• Distribuido
• Interpretado
• Robusto
• Seguro
• Arquitectura neutra
• Portable
• Altas prestaciones
• Multithread (multihilo)
• Dinámico
CARACTERÍSTICAS PRINCIPALES
.6
![Page 7: Introduccion Java.ppt](https://reader034.vdocuments.net/reader034/viewer/2022042700/5572144f497959fc0b943ce7/html5/thumbnails/7.jpg)
CARACTERÍSTICAS: SENCILLO
.7
• Elimina algunas de las características de C y C++:• No aritmética de punteros.
• No existen referencias.
• No existe typedef ni #define.
• No sobrecarga operadores.
• No herencia múltiple.
• Posee clase String.
• No necesidad de asignar y liberar memoria (Garbage Collector).
![Page 8: Introduccion Java.ppt](https://reader034.vdocuments.net/reader034/viewer/2022042700/5572144f497959fc0b943ce7/html5/thumbnails/8.jpg)
CARACTERÍSTICAS: ORIENTADO A OBJETOS
.8
• Java trabaja con sus datos como objetos y con interfaces a esos objetos.
• Implementa:
• Encapsulación. - Interfaces.
• Herencia simple. - Paquetes.
• Abstracción.
• Reutilización.
• Polimorfismo.
![Page 9: Introduccion Java.ppt](https://reader034.vdocuments.net/reader034/viewer/2022042700/5572144f497959fc0b943ce7/html5/thumbnails/9.jpg)
CARACTERÍSTICAS: DISTRIBUIDO
.9
• Concebido para trabajar en un entorno conectado en red.
• En sí no es distribuido, proporciona librerías y herramientas para que los programas puedan ser distribuidos, que los programas corran en varias máquinas interactuando.
![Page 10: Introduccion Java.ppt](https://reader034.vdocuments.net/reader034/viewer/2022042700/5572144f497959fc0b943ce7/html5/thumbnails/10.jpg)
• Compilador tradicional
• Traslada sentencias alto-nivel a múltiples instrucciones.
• Creación de librerías como resultado de compilaciones previas.
• Juntando, se crea programa ejecutable.
• Intérprete de ByteCodes
• Compilador Java
Traduce código fuente a código intermedio.
• Interprete de Java
Virtual Machine(JVM)
(ByteCodes interpretados (ejecutados))
CARACTERÍSTICAS: INTERPRETADO
.10
![Page 11: Introduccion Java.ppt](https://reader034.vdocuments.net/reader034/viewer/2022042700/5572144f497959fc0b943ce7/html5/thumbnails/11.jpg)
CARACTERÍSTICAS: ROBUSTO
.11
• No se interrumpe fácilmente.
• Evita sobreescribir o corromper memoria mediante punteros.
• Manejo de excepciones.
• Verificación de ByteCodes (por ejemplo no acceso ilegal de memoria).
![Page 12: Introduccion Java.ppt](https://reader034.vdocuments.net/reader034/viewer/2022042700/5572144f497959fc0b943ce7/html5/thumbnails/12.jpg)
CARACTERÍSTICAS: SEGURO
.12
• Aplicaciones seguras ya que no acceden a zonas delicadas de memoria o de sistema
• No existen punteros, no acceso a zonas delicadas de memoria.
• Una applet no puede acceder al sistema, a los archivos de la persona que lo está viendo.
![Page 13: Introduccion Java.ppt](https://reader034.vdocuments.net/reader034/viewer/2022042700/5572144f497959fc0b943ce7/html5/thumbnails/13.jpg)
CARACTERÍSTICAS: ARQUITECTURA NEUTRA
.13
• Java compila el código a un fichero objeto de formato independiente de la arquitectura de la máquina en que se ejecutará.
• Cualquier plataforma donde exista una JVM se puede ejecutar el código objeto independientemente de la máquina en el que ha sido generado.
![Page 14: Introduccion Java.ppt](https://reader034.vdocuments.net/reader034/viewer/2022042700/5572144f497959fc0b943ce7/html5/thumbnails/14.jpg)
CARACTERÍSTICAS: ARQUITECTURA NEUTRA
.14
• Código fuente se compila
a un código de bytes
independientemente
de la máquina.• Los ByteCodes se
ejecutan en una
máquina hipotética
que se implementa
por un sistema
run-time, que es
dependiente
de la máquina.
Tiempo de compilaciónTiempo de ejecución
![Page 15: Introduccion Java.ppt](https://reader034.vdocuments.net/reader034/viewer/2022042700/5572144f497959fc0b943ce7/html5/thumbnails/15.jpg)
CARACTERÍSTICAS: ARQUITECTURA NEUTRA
.15
• Elementos que forman parte de arquitectura de Java sobre una plataforma genérica.
• Dependiente del sistema:
• JVM.
• Librerías fundamentales.
• APIs de Java que
entren en contacto
directo con el hardware.
![Page 16: Introduccion Java.ppt](https://reader034.vdocuments.net/reader034/viewer/2022042700/5572144f497959fc0b943ce7/html5/thumbnails/16.jpg)
CARACTERÍSTICAS: PORTABLE
.16
• Más allá de la portabilidad básica por ser de arquitectura independiente.
![Page 17: Introduccion Java.ppt](https://reader034.vdocuments.net/reader034/viewer/2022042700/5572144f497959fc0b943ce7/html5/thumbnails/17.jpg)
CARACTERÍSTICAS: ALTAS PRESTACIONES
.17
• Compiladores JIT (Just in time): Compilan en el momento de ejecución.
• Traslada los bytecodes al
código máquina de la plataforma
según los va leyendo, realizando
cierto grado de optimización.
• JIT no pierde tiempo en
optimizar código que no se ejecutará.
![Page 18: Introduccion Java.ppt](https://reader034.vdocuments.net/reader034/viewer/2022042700/5572144f497959fc0b943ce7/html5/thumbnails/18.jpg)
CARACTERÍSTICAS: ALTAS PRESTACIONES
.18
• Se introdujo un nuevo JIT: HotSpot.
• Incluye compilador dinámico
y una máquina virtual para
Interpretar bytecodes.
• Mejor soporte para ordenadores
con varios procesadores,
mayor escalabilidad.
![Page 19: Introduccion Java.ppt](https://reader034.vdocuments.net/reader034/viewer/2022042700/5572144f497959fc0b943ce7/html5/thumbnails/19.jpg)
CARACTERÍSTICAS: MULTITHREAD
.19
• Ejecución de varias tareas a la vez. Permite muchas actividades simultáneas en un programa.
• Posee una serie de clases que facilitan su utilización.
• Mejor rendimiento interactivo y mejor comportamiento en tiempo real.
![Page 20: Introduccion Java.ppt](https://reader034.vdocuments.net/reader034/viewer/2022042700/5572144f497959fc0b943ce7/html5/thumbnails/20.jpg)
CARACTERÍSTICAS: DINÁMICO
.20
• No conecta todos los módulos que comprenden una aplicación hasta el mismo tiempo de ejecución.
• Las librerías nuevas o actualizadas no paralizan la ejecución de las aplicaciones siempre que mantengan la API anterior.
![Page 21: Introduccion Java.ppt](https://reader034.vdocuments.net/reader034/viewer/2022042700/5572144f497959fc0b943ce7/html5/thumbnails/21.jpg)
CARACTERÍSTICAS: DINÁMICO
.21
• Capaz de traer automáticamente cualquier pieza que el sistema necesite para funcionar.
![Page 22: Introduccion Java.ppt](https://reader034.vdocuments.net/reader034/viewer/2022042700/5572144f497959fc0b943ce7/html5/thumbnails/22.jpg)
¿QUÉ VENTAJAS TENGO COMO DESARROLLADOR?
.22
• Comenzar rápidamente.
• Escribir menos código, 4 veces menos que en C++.
• Escribir mejor código.
• Desarrollar programas más rápidamente.
• Eliminar dependencias de la plataforma.
• Escribir una vez, ejecutar en cualquier parte.
![Page 23: Introduccion Java.ppt](https://reader034.vdocuments.net/reader034/viewer/2022042700/5572144f497959fc0b943ce7/html5/thumbnails/23.jpg)
BIBLIOGRAFÍA
.23
• Libro de texto: “Thinking in Java”.
• Java Hispano: www.javahispano.org.
• Tutoriales de internet.