LPOO 01
DE PROGRAMACIÓN
ORIENTADO A
OBJETOS
¿Qué es Java?
Un poco de Historia …
En 1991, James Gosling creó un
lenguaje denominado Oak (roble) el
cual fue el predecesor de Java.
Su objetivo
era
establecer
un
lenguaje común para los dispositivos
electrodométicos.
Se basó en C++ tratando de sacarle la
complejidad y la inseguridad que
presentaba.
Internet es una gran RedMundial que
conecta múltiples ordenadores con
diferentes
sistemas
operativos
y
diferentes
arquitecturas
de
microprocesadores.
Entonces se rediseño el lenguaje para
desarrollar aplicaciones (applets) para
Tecnología JAVA
Java como lenguaje de programación
Veremos
que
existen
diferentes
lenguajes para escribir (programar)
aplicaciones. Unos son lenguajes
compilados y otros interpretados.
Javaes un lenguaje interpretado
Código compilado (I)
Hasta los 2000 la mayoría de las aplicaciones se hacían con
lenguajes compilados. El ingeniero debía:
Crear el código fuente (archivos con extensión .c, .cpp, etc)
Por medio de programas compiladores y enlazadores (link) crear el
código ejecutable (archivos con extensión .com y .exe)
Código fuente
Compilador/enlazador
Códigoejecutable
El código ejecutable es dependiente del sistema
operativo. Para cada sistema hay un compilador
Si se quiere ejecutar en otro sistema operativo (SO) hay
que recompilar el código fuente
Código fuente
Compilador/enlazador
de S.O. X
Código ejecutable para
Compilador/enlazador
de S.O. Y
Código ejecutable para
el S.O.
el S.O.
X
Y
Código compilado (II)
El programa resultante esejecutado directamente desde el
sistema operativo
Al resultado final también se denomina “código máquina”, es
decir, código dependiente del sistema en el que se ejecuta
Es una solución “dependiente”, pero muy eficiente
Código interpretado (I)
El código interpretado no es ejecutado
directamente por el sistema operativo.
Necesita un interprete para ser ejecutado
Cada sistema tiene su propiointerprete
Código fuente
Compilador
Programa ejecutado
Código interpretable
Interprete
Ventaja: el código interpretado no debe ser
modificado, ni recompilado cuando cambiamos
de sistema operativo. Cada sistema tiene su
propio interprete
Inconveniente: es menos eficiente que el código
ejecutado
Java: código interpretado
En muchos lenguajes (Cobol, C++, etc.) elprogramador crea un
programa (.exe) ejecutable por el sistema operativo.
En Java el código fuente se escribe en archivos con extensión
.java
El compilador (javac) no genera un programa (.exe) ejecutable
directamente por el sistema operativo. Genera código
interpretable, un archivo .class (byte code)
El archivo .class es ejecutado por el interprete, también
denominado MVJ (máquina virtual Java)
Tambiénexisten en Java compiladores que generan código
ejecutable (.exe) a partir del byte code. Esto mejora la
eficiencia pero no es portable
Interpretes y portabilidad
Lenguajes
interpretados
Lenguajes
compilados
Nivel
ejecución
Ejecutable
Windows
Ejecutable
Unix
C, C++
Ejecutable
Mac
Cada compilador es “dependiente
del sistema operativo” (SO): genera
un programa ejecutable (.exe) para
un SO. Si sequiere ejecutar en otro
SO, hay que usar su copilador
correspondiente
Intérprete
Windows
Código
Java
Código
único a
interpretar
Java
Bytecodes
Intérprete
Unix
Intérprete
Mac
El compilador no es dependiente del
SO: genera byte codes (.class) que
puede ser interpretado por cada uno
de los interpretes del SO
correspondiente
Java Development Kit (JDK)
Java Runtime Environment (JRE)
El JREes un paquete de software desarrollado por
Sun que contiene la JVM y todo lo necesario para
ejecutar programas Java + apis de java
El JDK es otro paquete que incluye todo lo
necesario para crear y ejecutar programas Java
(incluye el JRE, compilador, paquete de desarrollo
de aplicaciones java).
Puede descargar las últimas versiones en
www.sun.com
Desarrollo y ejecución de un Programa...
Regístrate para leer el documento completo.