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