2. ∗ Java
∗Fue creado en 1991 para una aplicación para Set-top box.
∗Sun Microsystems creo un grupo compuesto por trece
personas y dirigido por James Gosling para su desarrollo.
∗Inicialmente se denominó Oak por un roble cerca de las
oficinas de Gosling, el nombre fue cambiado por la existencia de
otro lenguaje llamado Oak.
Historia de Java
3. Historia de Java
¿Por qué se llamó Java?
−
El término Java fue acuñado en una cafetería frecuentada por algunos
de los miembros del equipo
−
JAVA = James Gosling, Arthur Van Hoff, y Andy Bechtolsheim.
−
JAVA = Just Another Vague Acronym ("sólo otro acrónimo ambiguo
más").
−
Tipo de cafe en la cafetería cercana
4. Historia de Java
Duke, Mascota de Java
−
Duke era "el agente de Software", era el que "hacia" las cosas que el
usuario pedia por medio de la pantalla animada en uno de los primeros
desarrollos “start 7”
5. ∗ Java
∗ La motivación original para crear Java
∗ proporcionando un lenguaje independiente de la plataforma y un entorno de
ejecución ligero y gratuito, para poder implementarlo en electrodomésticos
tipo neveras o tostadoras. (Write Once, Run Anywhere)
∗ Uno de los primeros proyectos desarrollados en Java
∗ Un control remoto llamado Star 7.
∗ Al mismo tiempo, el World Wide Web e Internet estaban ganando
popularidad. Gosling se dio cuenta de que Java podría ser usado para la
programación en Internet.
∗ El 9 de enero de 1996, Sun fundó el grupo empresarial JavaSoft para que
se encargase del desarrollo tecnológico. Dos semanas más tarde la
primera versión de Java fue publicada.
Historia de Java
6. ∗ La Tecnología Java es:
∗ Un lenguaje de programación
∗ Un entorno de desarrollo
∗ Es una aplicación
∗ Un entorno de ejecución
Tecnología Java:
¿Qué es la Tecnología Java?
7. ∗ Como lenguaje de programación, Java puede crear todo
tipo de aplicaciones que se podrían crear usando
cualquier lenguaje de programación convencional.
Tecnología Java:
Lenguaje de programación
8. ∗ Como entorno de desarrollo, la Tecnología Java provée
con un gran número de herramientas:
∗ Compilador (javac)
∗ Intérprete (java)
∗ Generador de documentación (javadoc)
∗ Una herramienta para empaquetar los .class
Y mucho más…
Tecnología Java:
Entorno de desarrollo
9. ∗ Las aplicaciones con Tecnología Java son generalmente
programas de uso general que funcionan en cualquier
máquina donde el Java runtime enviroment (JRE) está
instalado.
∗ Existen dos entornos de ejecución principales:
1. El JRE suministrado por el Java 2 Software Development Kit
(SDK) contiene un conjunto completo de clases.
2. La otra se encuentra en el navegador Web. La mayoría de los
navegadores suministran un intérprete para la Tecnología
Java y un entorno de ejecución.
Tecnología Java:
Una aplicación y un entorno de ejecución
10. ∗ Algunas características de Java:
∗ La máquina virtual de Java
∗ Interoperabilidad de Plataforma
∗ Recolección de Basura “Garbage Collection”
∗ Java es Simple
∗ Java es Orientado a Objetos
∗ Java es seguro
∗ Java es Multi-hilo
∗ Code Security
Características de Java
11. ∗ Máquina Virtual de Java - Java Virtual Machine (JVM)
∗ Una máquina imaginanaria que es implementada emulando un software en una
máquina real
∗ Provée las especificaciones de la plataforma hardware donde se compila el código
de la Tecnología Java
∗ Bytecode
∗ Un código especial que es entendido por la Máquina Virtual de Java (JVM)
∗ Independientemente de cualquier hardware, por lo que cualquier ordenador con
intérprete de Java puede ejecutar el programa compilado en Java, da igual en que
tipo de ordenador se haya compilado.
Características de Java
The Java Virtual Machine
13. ∗ Recolector de basura - Garbage collection thread
∗ Responsible de liberar cualquier memoria que pueda ser
liberada. Esto se realiza de manera automática durante la
vida del programa Java.
∗ El programador se liberaa de la carga de tener que liberar la
memoria no utilizada.
Características de Java
Garbage Collection
14. ∗ Java fue diseñado para hacer más fácil el desarrollo de
código sin bugs.
∗ Fácil de leer y escribir
∗ Es muy difícil escribir un programa Java que colapse tu
sistema
Características de Java
Java es Simple
15. ∗ Seguridad en el código es conseguido mediatne la
implementación del Java Runtime Enviroment (JRE)
∗ JRE
∗ Ejecuta código compilado por una JVM y realiza la carga de
clases (Class Loader), verificación de código(Verificador de
Código - Bytecode verifier) y finalmente ejecución de
código.
Características de Java
Seguridad de Código
16. ∗ Class Loader
∗ Responsable de la carga de las clases necesarias para el
programa Java
∗ Tras cargar las clases, la memoria dispuesta del ejecutable es
determinada. Esto añade protección contra acceso no
autorizado a areas restringidas del código ya que la memoria
está determinada durante la ejecución.
Características de Java
Code Security
17. ∗ La siguiente figura describe el proceso de compilación y
ejecución de un programa Java.
Fases de un programa Java
18. Fases de un programa Java
Tarea Herramienta a
usar
Salida
Escribir el programa Cualquier editor de
texto o IDE
Fichero .java
Compilar el programa Compilador Java
(javac)
Fichero .class
(Java bytecodes)
Ejecutar el programa Intérprete Java
(java)
Salida programa
19. ∗ Velocidad
Al tener que ser ejecutado medianta la JVM hace que no
sea tan rápido como con otras tecnologías, por
ejemplo C++.
∗ No es tan simple
Adquirir un estilo de programación orientada a objetos
es difícil. También saber sobre la filosofía y los
componentes en las clases de librerías es difícil y
consume mucho tiempo.
Desventajas de Java