2. Antecedentes
Año Característica
1991 El proyecto original se llamó “Green”,
dificultades portabilidad. En Agosto se creó
un nuevo Lenguaje Orientado a Objetos
llamado “OAK”
1993 Al proyecto “Green” se realizó
modificaciones y se llamó “First Person”, se
invirtió mucho en hardware y software sin
éxito. Creció un interés por Internet, se lanzó
Mosaic el primer navegador para la Web.
3. Antecedentes
Año Característica
1995 En enero se rediseño el lenguaje “OAK” para
desarrollar aplicaciones para Internet se
convirtió en JAVA
1996 Sun lanzó el entorno JDK 1.0 primera versión
del kit de desarrollo de dominio público.
1997 Se lanzó la primera versión comercial JDK
1.1
1998 Sun lanzó la plataforma JAVA 2 conocida
como JDK 1.2
4. Antecedentes
Año Característica
2000 Con SDK 1.3, posee multimedia mejorada,
más accesabilidad y compilación más rápida.
2001 Con SDK 1.4; introcuce la posibilidad de
trabajar con XML
5. Qué es JAVA?
Es un lenguaje de programación y un entorno
para ejecución de programas escritos en
lenguaje JAVA, es un lenguaje interpretado.
El compilador Java traduce el código fuente
Java en instrucciones que son interpretadas
por la Máquina Virtual Java(JVM).
6. Características de Java
Cuando se escriben programas en Java,
necesita ser compilado en un conjunto de
instrucciones optimizadas denominada
programa “bytecode” (Códigos de Bytes),
siendo independiente de la plataforma.
Ej: un programa Java compilado en una
estación de trabajo UNIX puede ejecutarse
en un Macintosh o en un terminal de
Windows 2000 o en Windows XP
7. Características de Java
Sencillo:
Facilitar las tareas del programador
profesional(en C++)
Utilizar eficientemente el lenguaje
Java es simple porque consta sólo de dos tipos
de datos primitivos: números y boolean
Todo en Java es una clase
8. Características de Java
Sencillo:
Elemento JAVA C++
Cadenas Objetos Arrays de caracteres
Punteros Interface Herencia múltiple
Asignación Garbage
collection
Asignación de
memoria y
Recolección de
basura
9. Características de Java
Orientado a Objetos:
La programación Orientada a objetos modela el
mundo real. Ej: circunferencia, automóvil,
ventana, libro, etc.
Un objeto tiene propiedades (un estado) y un
comportamiento.
Las propiedades o el estado se definen
utilizando datos.
El comportamiento se define utilizando
métodos.
10. Características de Java
Orientado a Objetos:
Los objetos se definen utilizando
Clases(es similar a una plantilla para
construir objetos) en Java.
Clase Cuadrado
Un cuadrado
De lado 10
Un cuadrado
De lado 25
InstanciarInstanciar
11. Características de Java
Se puede definir un Objeto: Cuadrado mediante una Clase
Cuadrado; Propiedad: lado; Método: calcularsuperficie.
Objeto es una realización concreta de una descripción de
una clase.
El proceso de creación de objetos se denomina
instanciación (crear instancias de una clase)
Nota: Java soporta las características más importantes de la
tecnología OO: Herencia, encapsulamiento y Polimorfismo.
12. Características de Java
Distribuido:
Implica que varias computadoras trabajan
juntas en la red.
La capacidad de red está incorporada a Java, ya
que maneja protocolos TCP/IP.
La utilización de una URL(Uniform Resource
Locator) de Java puede hacer que una
aplicación acceda fácilmente a un servidor
remoto.
13. Características de Java
Interpretado:
Java es interpretado y se necesita un intérprete
para ejecutar programas Java(puede estar en
cualquier sistema que esté provisto de una
JVM); genera un código bytecode, el cual es
independiente de la máquina.
Nota: Los programas Java no necesitan ser recompilados en una
máquina destino. Se compilan en un lenguaje de máquina para
una máquina imaginaria, denominada máquina virtual.
14. Características de Java
Robusto:
Es fiable, ya que hace restricciones en ciertas
áreas claves, como fuerza a encontrar errores
tempranos en el desarrollo de programas.
Para los errores de gestión de memoria y
condiciones excepcionales mal manejados java
lo realiza automáticamente por medio de la
recolección de basura para objetos no usados.
15. Características de Java
Robusto:
Nota: Java utiliza recolección de basura en tiempo de
ejecución en vez de liberación explícita de memoria. En
lenguaje C++ es necesario borrar o liberar memoria una vez
que el programa ha terminado.
16. Características de Java
Seguro:
Java permite la construcción de
programas libres de virus
Se puede descargar un applet Java y
ejecutarlo en su computadora sin que se
produzcan daños en su sistema.
Nota: Visitar sitio www.cs.princeton.edu/sip permite estudiar
problemas de seguridad informática, para Java, ActiveX y
Javascript
17. Características de Java
Arquitectura neutra:
Se la define también como independiente
de la plataforma, ya que se puede escribir
un programa que se ejecute en cualquier
plataforma con una Máquina Virtual
Java.
Nota: Visitar sitio www.cs.princeton.edu/sip permite estudiar
problemas de seguridad informática, para Java, ActiveX y
Javascript
18. Características de Java
Portable:
Java es un lenguaje de alto nivel que
permite escribir tanto programas
convencionales como aplicaciones para
Internet (applets).
Los programas Java pueden ejecutarse en
cualquier plataforma sin necesidad de ser
recompilados
19. Características de Java
Portable:
Nota: El tamaño fijo de los números hace el programa
portable.
El entorno Jave es portable a nuevos sistemas operativos y
hardware. El compilador Java está escrito en Java.
20. Características de Java
Alto rendimiento:
Las nuevas versiones de los compiladores
de Java han mejorado como lo es el
JIT(Just-in-time), permiten que
programas de Java independientes de la
plataforma se ejecuten con casi el mismo
rendimiento en tiempo de ejecución que
los lenguajes convencionales compilados.
21. Características de Java
Multihilo:
Es la capacidad de un programa de
ejecutar varias tareas simultáneamente.
Los hilos sincronizados son muy útiles en
la creación de aplicaciones distribuidas y
en red.
22. Características de Java
Dinámico:
Java es un lenguaje interpretado, ya que
los programas Java se ejecutan con
cantidades importantes de información de
tipos en tiempo de ejecución que se
utiliza para verificar y resolver accesos a
objetos en tiempo de ejecución,
permitiendo enlazar código
dinámicamente de un modo seguro y
expeditivo.
23. Herramientas de desarrollo
Herramienta Sitio
Café de Symantec www.symantec.com
Sun Java Workshop www.javasoft.com
Visual Age for Java by IBM www.ibm.com
JFActory de Roge Wave www.rogewave.com
Jbuilder de Imprise www.imprise.com
Visual J++ de Microsoft www.microsoft.com
Forte de Sun www.sun.com