Download El lenguaje de programación Java

Document related concepts
no text concepts found
Transcript
Algoritmia y Programación
Capítulo 1: El lenguaje de
programación Java
Material de clase adaptado por:
Mauricio Cabezas
[email protected]
El lenguaje de programación Java
Orígenes de Java
El lenguaje de programación Java
Orígenes de Java
•Necesidad de un lenguaje de programación que
fuera independiente de la plataforma de hardware y
que permitiera el desarrollo de software para
interactuar con dispositivos eléctricos
•En Sun Microsystems Inc(1991) se concibe un
lenguaje denominado Oak, con la intención de crear
un lenguaje de programación para dispositivos
electrónicos
El lenguaje de programación Java
Orígenes de Java
•En 1995, el nuevo lenguaje toma el nombre de Java,
y fue dado a conocer como un lenguaje orientado a
la programación de objetos
•El lenguaje era independiente del procesador
•Se centró la atención en las posibilidades de Java al
emplearlo en redes de comunicaciones
El lenguaje de programación Java
Orígenes de Java
•Se forma el grupo, por parte de Sun, llamado
JavaSoft
•Java no es el resultado de una evolución de C o
C++
El lenguaje de programación Java
Orígenes de Java
•Ante la globalización de Internet se requería código
portable y confiable; características de Java
•Surge entonces como un lenguaje natural en el
desarrollo de software en la Web
El lenguaje de programación Java
Orígenes de Java
•Java pasó de ser un lenguaje para
programar artículos de consumo, a ser
un lenguaje que permitiera crear
programas independientes de la
plataforma y que pudiera ser utilizado
en el Web
El lenguaje de programación Java
Importancia del lenguaje Java
El lenguaje de programación Java
Importancia del lenguaje Java
•Se presenta como un lenguaje que fue pensado
desde su inicio, orientado a objetos
•C++ fue una adaptación de C al mundo de los
objetos
•La P.O.O. permite que nuevos objetos hereden
características de objetos padres
•La reutilización de código es una característica
natural en los lenguajes O. O.
El lenguaje de programación Java
Importancia del lenguaje Java
•Correspondencia directa con el mundo
real(compuesto de objetos)
•Permite implementar GUI multimediales
•Brinda seguridad en aplicaciones relacionadas con
redes de computadores
•Es portable
•Es gratis
VERSIONES











JDK 1.0 (1996): primer lanzamiento del lenguaje Java.
· JDK 1.1 (1997): mejora de la versión anterior.
· J2SE 1.2 (1998): ésta y las siguientes versiones fueron recogidas bajo la denominación Java 2 y
el nombre "J2SE" (Java 2 Platform, Standard Edition), reemplazó a JDK para distinguir la
plataforma base de J2EE (Java 2 Platform, Enterprise Edition) y J2ME (Java 2 Platform, Micro
Edition). Incluyó distintas mejoras.
· J2SE 1.3 (2000): mejora de la versión anterior.
· J2SE 1.4 (2002): mejora de la versión anterior.
· J2SE 5.0 (2004): originalmente numerada 1.5, esta notación aún es usada en ocasiones. Mejora
de la versión anterior.
· Java SE 6 (2006): en esta versión, Sun cambió el nombre "J2SE" por Java SE y eliminó el ".0"
del número de versión. Mejora de la versión anterior.
· Java SE 7 (2011): nueva versión que mejora la anterior.
· Java SE 8 (2014): nueva versión que mejora la anterior. Incluye la posibilidad de embeber
JavaScript con Java y mejoras en la gestión de fechas y tiempo.
· Java SE 9: nueva versión que mejora la anterior (en difusión).
· Java SE 10: nueva versión que mejora la anterior (todavía sin uso comercial).
EDICIONES
Existen varias Ediciones de Java, cada una de ellas
diseñada para cierto ambiente en particular. Estas
ediciones son:
Java 2 Standard Edition (J2SE). Forman parte de
este grupo los paquetes de clase de uso general
(tratamiento de cadenas, colecciones, acceso a
datos, etc.), es decir, aquellos que se utilizan en
cualquier tipo de aplicación . J2SE incluye
también los paquetes de clases para la creación de
entornos gráficos y aplicaciones para navegadores
de internet (applets).

Java 2 Enterprise Edition (J2EE).
Proporciona los paquetes y tecnologías
necesarias para la creación de aplicaciones
Empresariales multicapa, entre ellas, las
aplicaciones que se van a ejecutar en
entorno WEB. Orientado al desarrollo de
aplicaciones corporativas.



Java Micro Edition es la edición que se emplea en dispositivos
móviles, tales como los teléfonos celulares. Es una versión
recortada del Java SE con ciertas extensiones enfocadas a las
necesidades particulares de esos tipos de dispositivos.
La plataforma Java Micro Edition, o Java ME (anteriormente
J2ME), es una colección de APIs en Java orientadas a productos
de
consumo
como
PDAs,
teléfonos
móviles
o
electrodomésticos.
Java ME se ha convertido en una buena opción para crear juegos
en teléfonos móviles debido a que se puede emular en un PC
durante la fase de desarrollo y luego subirlos fácilmente al
teléfono. Al utilizar tecnologías Java el desarrollo de
aplicaciones o videojuegos con estas APIs resulta bastante
económico de portar a otros dispositivos.

Java Card es la versión de Java enfocada a
aplicaciones que se ejecutan en tarjetas de
crédito con chip. Es una versión muy
recortada de Java. Una Java Card es una
tarjeta capaz de ejecutar mini-aplicaciones
Java. En este tipo de tarjetas el sistema
operativo es una pequeña máquina virtual
Java (JVM) y en ellas se pueden cargar
dinámicamente aplicaciones desarrolladas
específicamente para este entorno.
ENTORNOS INTEGRADOS DE DESARROLLO
(Integrated Development Environments)
GRATUITOS
-Eclipse
-NetBeans
-JCreator
DE PAGO
-
-
Borland Jbuilder
IBM Visual Age for Java
Sybase Power
Metrowerks Code Warrior
El lenguaje de programación Java
El JDK y su instalación
El lenguaje de programación Java
El JDK y su instalación
JDK(Java Development Kit)
•El kit de desarrollo de Java es un conjunto
de herramientas que le permiten a las
personas desarrollar software, en especifico
aquellos programas en el lenguaje llamado
JAVA
•Existen las versiones JDK1.1, JDK1,1,7,
JDK1.2.1, JDK1.3 y JDK1.4 …..entre otras.
El lenguaje de programación Java
El JDK y su instalación
JDK(Java Development Kit)
Cada versión del compilador de Java incluye
nuevas características. Tal es el caso de la
versión JDK1.2.1, a partir de la cual se incluyó
el manejo de componentes Swing
El lenguaje de programación Java
Herramientas de desarrollo del JDK
CARPETA
DESCRIPCIÓN
bin
Contiene las herramientas ejecutables del JDK
para desarrollar, ejecutar, depurar y documentar
programas en Java
demo
Contiene Applets para ejecución, así como
muestras de código para la clases de Java
docs
Completa documentación acerca de Java
include
Archivos de encabezamiento requeridos para la
construcción del entorno java
lib
Bibliotecas y archivos utilizados por el JDK
El lenguaje de programación Java
Herramientas de desarrollo del JDK
DESCRIPCIÓN
PROGRAMA
java
Interpretador para ejecutar aplicaciones
javac
Compilador de Java
javadoc
Para la generación de documentación de clases
appletviewer
Para visualizar las ventanas de Applets
javah
Generador de archivos C++ de encabezados
javap
Desensamblador de clases Java
jdb
Depurador Java
El lenguaje de programación Java
Para desarrollar programas en Java se debe
realizar lo siguiente:
1. En un editor de texto, puede ser el “Bloc de
Notas” o “JCreator” en Windows o “kate” en
linux, usted escribe el programa. El programa
contiene instrucciones en el lenguaje Java,
las instrucciones están en inglés
El conjunto de instrucciones que forman
el programa se llama código fuente
El lenguaje de programación Java
En la figura se muestra el código fuente de un programa en Java
El lenguaje de programación Java
•PROBLEMA: El inglés es entendible por el ser
humano pero la maquina no conoce ese
idioma
•SOLUCION: Transformar o traducir el código
fuente que está en inglés a un lenguaje que
conozca la maquina
Recuerde, la maquina solo conoce el
lenguaje de 0’s y 1’s, llamado código binario
o de bytes
El lenguaje de programación Java
Para transformar o traducir el código fuente
que está en inglés a código de bytes, se debe
utilizar un compilador
En el JDK viene incluido un compilador
El lenguaje de programación Java
Herramientas de desarrollo del JDK
Código
Fuente
Compilador
Java
Archivo
de clase
011011100
101010100
101110010
100110110
El archivo de clase es aquel que contiene la
traducción en código de bytes del código fuente
Note que contiene 1’s y 0’s!!!
El lenguaje de programación Java
Suponga que usted quiere utilizar la
calculadora de Windows, que debe hacer?
Para utilizar la calculadora usted ejecuta el
programa para la calculadora.
El lenguaje de programación Java
En Java, para ejecutar un programa se utiliza
la JVM, Java Virtual Machine
La JVM toma el archivo de clase(en codigo
de bytes), y ejecuta o permite ver el
programa.
El lenguaje de programación Java
Herramientas de desarrollo del JDK
Código
Fuente
Compilador
Java
Archivo
de clase
011011100
101010100
101110010
100110110
JVM
Archivo
de clase
100001100
011111100
011000010
010100110
Pantalla
del
usuario
El lenguaje de programación Java
En Java se pueden desarrollar dos tipos de programas
• Aplicaciones: programas locales
• Applets: programas que se ejecutan en Internet
El lenguaje de programación Java
Existen dos tipos de programas en Java, aplicaciones y
applets
Las aplicaciones son programas que se ejecutan de
manera local en el computador y se caracterizan por
tener un método llamado main()
Los applets son programas que se ejecutan en un
navegador o browser y permiten hacer uso de Java como
un potente lenguaje para programar en el web
El lenguaje de programación Java
•Los archivos con código java se guardan bajo la extensión
.java
Ejemplo.java
•Para compilar el archivo se emplea el comando
javac Ejemplo.java
Esto genera el archivo Ejemplo.class
•Si el programa es una aplicación, ejecútela con el comando
java Ejemplo
El lenguaje de programación Java
•Los archivos con código java se guardan bajo la
extensión .java
Ejemplo.java
•Para compilar el archivo se emplea el comando
javac Ejemplo.java
Esto genera el archivo Ejemplo.class
•Si el programa es un applet, puede emplear el comando
appletviewer Ejemplo.html
El lenguaje de programación Java
Herramientas de desarrollo del JDK
•El compilador Java: javac
Toma el código fuente de Java y lo convierte en
código de bytes.
El código de bytes son las instrucciones para la
maquina virtual
El lenguaje de programación Java
Herramientas de desarrollo del JDK
•El interprete de Java: java
Ejecuta, utilizando la JVM, los archivos .class
Al ejecutar el comando java Ejemplo, el interprete
examina la respectiva clase para localizar un método
llamado main(), declarado como public static void
El lenguaje de programación Java
Herramientas de desarrollo del JDK
•El visualizador de Applets
Permite ejecutar un applet y visualizarlo de manera
rápida y fácil.
La forma general es:
appletviewer archivoHTML.html
El lenguaje de programación Java
•Orígenes de Java
•Importancia del lenguaje Java
El ambiente del Web y Java
•Principales características de Java
•El JDK y su instalación
•Herramientas de desarrollo del JDK
•Plataforma de Java
•Aplicaciones y Applets
El lenguaje de programación Java
El ambiente del Web y Java
•Lenguaje orientado a aplicaciones cliente-servidor
•Abrir una conexión a una página Web
•Leer y escribir datos
•Applets: programas diseñados para ser ejecutadas
en un navegador
El lenguaje de programación Java
Ambiente de
desarrollo
Servidor Web
Código fuente
Java
Página HTML
Librerías de
Java
Código Byte
de Java
World
Wide
Web
JVM
Flujo de un
programa Java
remoto o applet
Llamadas al SO
SO
Cliente Java
El lenguaje de programación Java
El ambiente del Web y Java
•Para que los applets puedan operar es necesario
colocarlos en el Web a través de una página HTML, la
cual debe contener una etiqueta de tipo <APPLET>
•El navegador debe tener la capacidad de soportar
las aplicaciones Java
El lenguaje de programación Java
El ambiente del Web y Java
<HTML>
<BODY>
<APPLET CODE=“PrimerApplet.class”
WIDTH=“200”
HEIGHT=“200”>
</APPLET>
</BODY>
</HTML>
El lenguaje de programación Java
Plataforma de Java
Plataforma basada en software, que se conforma de
dos componentes:
•La maquina virtual de Java(JVM)
•La interfaz de programas de aplicación o Java
API
El lenguaje de programación Java
Plataforma de Java
•La maquina virtual de Java(JVM)
•Es la responsable de facilitar el comportamiento
de Java en plataformas cruzadas(independencia
del hardware)
•Tamaño relativamente pequeño del código
compilado
•El código de bytes es ejecutado en la JVM
El lenguaje de programación Java
Plataforma de Java
•El API de Java
•Colección de componentes de software listos
para usar.
•Se conforma de paquetes.
El lenguaje de programación Java
Plataforma de Java
miPrograma.java
API de Java
JVM
Plataforma
hardware