Download - Java janner
![Page 1: Java janner](https://reader034.vdocuments.pub/reader034/viewer/2022042509/559d77ab1a28ab63358b4651/html5/thumbnails/1.jpg)
![Page 2: Java janner](https://reader034.vdocuments.pub/reader034/viewer/2022042509/559d77ab1a28ab63358b4651/html5/thumbnails/2.jpg)
Índice ¿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: Java janner](https://reader034.vdocuments.pub/reader034/viewer/2022042509/559d77ab1a28ab63358b4651/html5/thumbnails/3.jpg)
¿Qué es Java?
La tecnología Java es un lenguaje de programación y
una plataforma.
![Page 4: Java janner](https://reader034.vdocuments.pub/reader034/viewer/2022042509/559d77ab1a28ab63358b4651/html5/thumbnails/4.jpg)
La plataforma Java 2 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: Java janner](https://reader034.vdocuments.pub/reader034/viewer/2022042509/559d77ab1a28ab63358b4651/html5/thumbnails/5.jpg)
La plataforma Java 2
![Page 6: Java janner](https://reader034.vdocuments.pub/reader034/viewer/2022042509/559d77ab1a28ab63358b4651/html5/thumbnails/6.jpg)
Características Principales Sencillo Orientado a objetos Distribuido Interpretado Robusto Seguro
Arquitectura neutra Portable Altas prestaciones Multithread (multihilo) Dinámico
![Page 7: Java janner](https://reader034.vdocuments.pub/reader034/viewer/2022042509/559d77ab1a28ab63358b4651/html5/thumbnails/7.jpg)
Características: Sencillo 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: Java janner](https://reader034.vdocuments.pub/reader034/viewer/2022042509/559d77ab1a28ab63358b4651/html5/thumbnails/8.jpg)
Características: Orientado a objetos
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: Java janner](https://reader034.vdocuments.pub/reader034/viewer/2022042509/559d77ab1a28ab63358b4651/html5/thumbnails/9.jpg)
Características: Distribuido 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: Java janner](https://reader034.vdocuments.pub/reader034/viewer/2022042509/559d77ab1a28ab63358b4651/html5/thumbnails/10.jpg)
Características: Interpretado 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))
![Page 11: Java janner](https://reader034.vdocuments.pub/reader034/viewer/2022042509/559d77ab1a28ab63358b4651/html5/thumbnails/11.jpg)
Características: Robusto 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: Java janner](https://reader034.vdocuments.pub/reader034/viewer/2022042509/559d77ab1a28ab63358b4651/html5/thumbnails/12.jpg)
Características: Seguro 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: Java janner](https://reader034.vdocuments.pub/reader034/viewer/2022042509/559d77ab1a28ab63358b4651/html5/thumbnails/13.jpg)
Características: Arquitectura neutra
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: Java janner](https://reader034.vdocuments.pub/reader034/viewer/2022042509/559d77ab1a28ab63358b4651/html5/thumbnails/14.jpg)
Características: Arquitectura neutra
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: Java janner](https://reader034.vdocuments.pub/reader034/viewer/2022042509/559d77ab1a28ab63358b4651/html5/thumbnails/15.jpg)
Características: Arquitectura neutra
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 contactodirecto con el hardware.
![Page 16: Java janner](https://reader034.vdocuments.pub/reader034/viewer/2022042509/559d77ab1a28ab63358b4651/html5/thumbnails/16.jpg)
Características: Portable
Más allá de la portabilidad básica por ser de arquitectura
independiente.
![Page 17: Java janner](https://reader034.vdocuments.pub/reader034/viewer/2022042509/559d77ab1a28ab63358b4651/html5/thumbnails/17.jpg)
Características: Altas prestaciones
Compiladores JIT (Just in time): Compilan en el momento de ejecución. Traslada los bytecodes alcódigo máquina de la plataformasegún los va leyendo, realizandocierto grado de optimización. JIT no pierde tiempo en optimizar código que no se ejecutará.
![Page 18: Java janner](https://reader034.vdocuments.pub/reader034/viewer/2022042509/559d77ab1a28ab63358b4651/html5/thumbnails/18.jpg)
Características: Altas prestaciones
Se introdujo un nuevo JIT: HotSpot.
Incluye compilador dinámicoy una máquina virtual paraInterpretar bytecodes. Mejor soporte para ordenadorescon varios procesadores,mayor escalabilidad.
![Page 19: Java janner](https://reader034.vdocuments.pub/reader034/viewer/2022042509/559d77ab1a28ab63358b4651/html5/thumbnails/19.jpg)
Características: Multithread 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: Java janner](https://reader034.vdocuments.pub/reader034/viewer/2022042509/559d77ab1a28ab63358b4651/html5/thumbnails/20.jpg)
Características: Dinámico 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: Java janner](https://reader034.vdocuments.pub/reader034/viewer/2022042509/559d77ab1a28ab63358b4651/html5/thumbnails/21.jpg)
Características: Dinámico Capaz de traer automáticamente cualquier pieza
que el sistema necesite para funcionar.
![Page 22: Java janner](https://reader034.vdocuments.pub/reader034/viewer/2022042509/559d77ab1a28ab63358b4651/html5/thumbnails/22.jpg)
¿Qué ventajas tengo como desarrollador?
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: Java janner](https://reader034.vdocuments.pub/reader034/viewer/2022042509/559d77ab1a28ab63358b4651/html5/thumbnails/23.jpg)
Bibliografía
Libro de texto: “Thinking in Java”. Java Hispano: www.javahispano.org. Tutoriales de internet.