Descargar la presentación
La descarga está en progreso. Por favor, espere
1
El lenguaje de programación Java.
por Uriel R. Nava V. Lenguajes de Programación Prof. Dra. Ana Lilia Laureano Noviembre, 2004 Portada: Presentación del lenguaje de programación Java. Maestría en Ciencias e Ingeniería de la Computación
2
Maestría en Ciencias e Ingeniería de la Computación
CONTENIDO Orígenes. Un poco de historia Características de Java. El lenguaje de programación Java. La plataforma Java La Máquina Virtual La API de Java Simple. Orientado a Objetos. Distribuido. Interpretado. Robusto. Seguro. De arquitectura neutral. Portable. De alto rendimiento. Multihilos. Dinámico. Compilando y ejecutando mi primer programa Una mirada a Java Conclusiones. Maestría en Ciencias e Ingeniería de la Computación
3
“En el principio existía y el caos y C++ …”
ORÍGENES “En el principio existía y el caos y C++ …” El lenguaje de programación Java fue diseña para hacer frente a los retos de las aplicaciones desarrolladas en ambientes de red; dentro de estos retos destacan la seguridad en las aplicaciones, que éstas consuman el mínimo de recursos del sistema y puedan ejecutarse en cualquier hardware y plataforma de software. Java fue parte de un proyecto para desarrollar software avanzado para dispositivos de red y sistemas embebidos. Maestría en Ciencias e Ingeniería de la Computación
4
Maestría en Ciencias e Ingeniería de la Computación
ORÍGENES (2) La meta fue desarrollar una plataforma que operara en tiempo real, portable y distribuida C++ Eiffel SmallTalk C Cedar/Mesa ¡¡¡ JAVA !!! Maestría en Ciencias e Ingeniería de la Computación
5
Maestría en Ciencias e Ingeniería de la Computación
UN POCO DE HISTORIA … El nombre Java, se refiere al café y no a la isla de Java. James Gosling quería darle a su lenguaje un nombre que transmitiera la idea de energía, como la cafeína. Maestría en Ciencias e Ingeniería de la Computación
6
Maestría en Ciencias e Ingeniería de la Computación
UN POCO DE HISTORIA … (2) Diciembre Sun Microsystems contrata a James Gosling para participar en “Green Project”. Abril Es liberado el compilador Oak. Enero Se desarrolla el prototipo “Star seven” y VOD (Video on Demand). Diciembre “Green Project” se establece como una subsidiaria de Sun Microsystems. Finales de Se pierde un proyecto con Time – Warner. Octubre Es liberado Hot Java. Noviembre Se forma la compañía Java Soft. Maestría en Ciencias e Ingeniería de la Computación
7
“Sorry to steal the show”
CARACTERÍSTICAS DE JAVA Java es un lenguaje de programación con el que los programadores pueden crear aplicaciones semejantes a las desarrolladas en C++. “Java es un lenguaje de programación de alto nivel, simple orientado a objetos, distribuido, interpretado, sólido, seguro, de arquitectura neutral, portable, de alto desempeño, multihilos y dinámico” “Sorry to steal the show” Maestría en Ciencias e Ingeniería de la Computación
8
Maestría en Ciencias e Ingeniería de la Computación
SIMPLE Java ofrece toda la funcionalidad de un lenguaje potente, pero sin las características menos usadas y más confusas de estos. Elimina muchas de las características de otros lenguajes como C++, para mantener reducida la especificación del lenguaje y añade propiedades útiles como el recolector de basura. Aritmética de apuntadores. Estructuras (struct). Macros (#define). Necesidad de liberar memoria free. No ofrece herencia múltiple. Maestría en Ciencias e Ingeniería de la Computación
9
Maestría en Ciencias e Ingeniería de la Computación
ORIENTADO A OBJETOS Java implementa la tecnología de C++ y soporta las tres características del paradigma orientado a objetos. Encapsulamiento: Implementa información oculta. Polimorfismo: El mismo mensaje se envía a diferentes objetos, resultando en comportamientos que dependen de la naturaleza del objeto que recibió el mensaje. Herencia: Puede definir nuevas clases y comportamientos (métodos) basados en clases existentes. Maestría en Ciencias e Ingeniería de la Computación
10
Maestría en Ciencias e Ingeniería de la Computación
DISTRIBUIDO Presenta extensas capacidades de interconexión TCP/IP. Existen librerías de rutinas para acceder e interactuar con protocolos como http y ftp. Por si sólo no es distribuido, pero proporciona herramientas para que nuestros programas puedan serlo Maestría en Ciencias e Ingeniería de la Computación
11
Maestría en Ciencias e Ingeniería de la Computación
INTERPRETADO El intérprete de Java (Sistema runtime), puede ejecutar directamente el código. Enlazar un programa requiere menos recursos que compilarlo, por lo que los desarrolladores pasan más tiempo desarrollando y menos compilando. Java es “leenntooo”, pero con la introducción de compiladores JIT el panorama está cambiando. La JVM es una definición de una máquina abstracta, por lo que un intérprete distinto debe estar disponible para cada arquitectura de hardware. Maestría en Ciencias e Ingeniería de la Computación
12
Maestría en Ciencias e Ingeniería de la Computación
ROBUSTO Java realiza verificaciones en busca de problemas, tanto en tiempo de compilación, como de ejecución. La comprobación de tipos ayuda a detectar errores. Obliga a la declaración explícita de los métodos. Maneja la memoria Realiza verificación del bytecode Maestría en Ciencias e Ingeniería de la Computación
13
Maestría en Ciencias e Ingeniería de la Computación
SEGURO La seguridad tiene dos facetas: Se eliminan características como los apuntadores y el casting implícito para prevenir el acceso ilegal ala memoria El código Java pasa por muchas verificaciones antes de ser ejecutado en una máquina mediante el classloader Maestría en Ciencias e Ingeniería de la Computación
14
DE ARQUITECTURA NEUTRAL
El compilador Java compila su código a un archivo objeto de formato independiente a la arquitectura de la máquina en que se ejecutará Cualquier máquina que tenga el sistema runtime, podrá ejecutar ese código Maestría en Ciencias e Ingeniería de la Computación
15
Maestría en Ciencias e Ingeniería de la Computación
PORTABLE Más allá de la portabilidad de la arquitectura independiente, Java implementa otros estándares de portabilidad, como el estándar IEEE754. Maestría en Ciencias e Ingeniería de la Computación
16
Maestría en Ciencias e Ingeniería de la Computación
DE ALTO RENDIMIENTO Como el código Java (bytecode) es interpretado, el proceso de programación a veces no es tan rápido como la compilación y ejecución directas en una plataforma de hardware en particular. Sin embargo, la compilación incluye algunas opciones para traducir el bytecode a código de máquina para la plataforma específica de hardware. Java crea objetos en 8.4 s Maestría en Ciencias e Ingeniería de la Computación
17
Maestría en Ciencias e Ingeniería de la Computación
MULTIHILOS Al ser por naturaleza multihilos, permite hacer tareas simultaneas en un programa. Las tareas o procesos ligeros son pequeños procesos o piezas independientes de un gran proceso. El beneficio se traduce en un mejor rendimiento interactivo y mejor comportamiento en tiempo real Maestría en Ciencias e Ingeniería de la Computación
18
Maestría en Ciencias e Ingeniería de la Computación
DINÁMICO Java se beneficia todo lo posible de la tecnología orientada a objetos y no intenta conectar todos los módulos que comprende una aplicación hasta el mismo tiempo de ejecución, las librerías nuevas o actualizadas no paralizan la ejecución de las aplicaciones actuales siempre que mantengan la API anterior. Maestría en Ciencias e Ingeniería de la Computación
19
Maestría en Ciencias e Ingeniería de la Computación
LA PLATAFORMA JAVA Una plataforma es el hardware o ambiente de software donde se ejecutan programas. Windows 2000. Linux. Solaris. MacOS. Java presenta un conjunto de herramientas de software que permite crear e implantar contenido ejecutable utilizando el lenguaje de programación Java La Maquina Virtual Java (Java Virtual Machine, JVM). La API de Java Maestría en Ciencias e Ingeniería de la Computación
20
Maestría en Ciencias e Ingeniería de la Computación
LA PLATAFORMA JAVA (2) Maestría en Ciencias e Ingeniería de la Computación
21
COMPILANDO Y EJECUTANDO …
Maestría en Ciencias e Ingeniería de la Computación
22
COMPILANDO Y EJECUTANDO …(2)
Maestría en Ciencias e Ingeniería de la Computación
23
Maestría en Ciencias e Ingeniería de la Computación
UNA MIRADA A JAVA Sintaxis de Java. La sintaxis de un lenguaje define cómo se usarán las palabras claves, los operadores y las variables para construir y evaluar expresiones. La sintaxis de Java especifica como se escribirán los siguientes elementos: Comentarios. Identificadores. Palabras clave. Literales. Expresiones y operadores. Variables y tipos de datos. Bloques y sentencias. Maestría en Ciencias e Ingeniería de la Computación
24
Maestría en Ciencias e Ingeniería de la Computación
UNA MIRADA A JAVA (2) Comentarios: Java ofrece tres tipos de comentarios: dos para comentarios regulares en el código fuente y uno para la documentación especial del sistema javadoc. Comentarios de varias líneas. /* Este es un ejemplo de un comentario de varias líneas. */ Comentarios de una sola línea. // Este es un comentario de una sola línea Comentarios para documentación. /** Este tipo de comentarios los utiliza la herramienta javadoc Maestría en Ciencias e Ingeniería de la Computación
25
Maestría en Ciencias e Ingeniería de la Computación
UNA MIRADA A JAVA (3) Identificadores Un identificador es una secuencia de caracteres comenzando por una letra y conteniendo letras y números. Los identificadores no se limitan a los caracteres ASCII, si el editor de texto lo soporta, se pueden escribir identificadores utilizando caracteres Unicode. Las letras Java incluyen los caracteres ASCII A-Z y a-z. Los dígitos Java incluyen los dígitos ASCII 0-9. Para propósitos de construir identificadores, los caracteres ASCII $ y _ son también considerados letras Java. Estos son algunos ejemplos de identificadores válidos: _varx $var1 MAX_NUM var2 Maestría en Ciencias e Ingeniería de la Computación
26
Maestría en Ciencias e Ingeniería de la Computación
UNA MIRADA A JAVA (4) Palabras clave La siguiente tabla muestra las palabras claves de Java, éstas son reservadas y no pueden ser utilizadas como identificadores. abstract default if private this boolean do implements protected throw break double import public throws byte else instanceof return transient case extends int short try catch fina linterface static void char finally long strictfp volatile class float native super while for new switch continue goto package synchronized true, false, and null no son palabras claves pero son palabras reservadas, así que tampoco pueden ser utilizadas como identificadores. Maestría en Ciencias e Ingeniería de la Computación
27
Maestría en Ciencias e Ingeniería de la Computación
UNA MIRADA A JAVA (5) Maestría en Ciencias e Ingeniería de la Computación
28
Maestría en Ciencias e Ingeniería de la Computación
UNA MIRADA A JAVA (6) Maestría en Ciencias e Ingeniería de la Computación
Presentaciones similares
© 2024 SlidePlayer.es Inc.
All rights reserved.