Tema 2: La Tecnología Java



Documentos relacionados
Tema 1. Introducción a JAVA

Programador en Plataforma Java y XML

Qué es Java? Introducción a Java. Lenguajes Orientados a Objetos. Qué es Java? Historia de Java. Objetivos de Java

INF 473 Desarrollo de Aplicaciones en

Tema 1. Java: Conceptos generales

INTRODUCCIÓN A JAVA. Índice

A continuación resolveremos parte de estas dudas, las no resueltas las trataremos adelante

19. Packages o paquetes

Módulo 2. Inicio con Java


Capítulo 5 Introducción al Desarrollo de Aplicaciones Móviles usando J2ME

Introducción a la Programación en Java. Page 1

Java y Eclipse. Lenguajes y Entornos de Programación Libre

Seminario de Java. Contenido

INTRODUCCIÓN A LA PROGRAMACIÓN DE DISPOSITIVOS MÓVILES

Desarrollo de Aplicaciones Empresariales en Java INTRODUCCIÓN A JAVA

JAVA PARA PRINCIPIANTES

Java Básico. Introducción a Java. Copyright

Revista Digital Universitaria. 10 de agosto 2004 Volumen 5 Número 7 ISSN:

Capitulo 4. JavaFX. Se da a conocer la plataforma de desarrollo JavaFX, los niveles en el cual se encuentra

Java en 2 horas. Rodrigo Santamaría

Programación Interactiva Introducción a Java. Escuela de Ingeniería de Sistemas y Computación Facultad de Ingeniería Universidad del Valle

TEMA 1. Introducción

1. INTRODUCCIÓN Y OBJETIVOS

picojava TM Características

Taller de Programación Estructurada en Java Tema 2. Fundamentos de la programación orientada a objetos

J2ME ENTORNO DE EJECUCIÓN. Un entorno de ejecución determinado de J2ME se compone entonces de una selección de:

JAVA ENTERPRISE EDITION (J2EE) ARQUITECTURA TECNOLOGÍAS (1/2) (L1)

PROGRAMACIÓN ORIENTADA A OBJETOS (L40629) Sabino Miranda-Jiménez

Ingº CIP Fabian Guerrero Medina Master Web Developer-MWD

TECNOLOGÍAS DE DESARROLLO: JAVA

JAVA EE 5. Arquitectura, conceptos y ejemplos.

Tema 2: Introducción a Android

Unidad I. Introducción a la programación de Dispositivos Móviles (Continuación )

Índice. Qué es Java? La plataforma Java 2 La Máquina Virtual de Java Características principales Qué ventajas tengo como desarrollador?

Java Inicial (20 horas)

Capitulo 1: Plataforma Android

Introducción al lenguaje de programación java

Módulo 1 El lenguaje Java

Uso de excepciones en Java

Capítulo 7. Implementación del Sistema

Diplomado Java. Descripción. Objetivo. A quien está dirigido. Requisitos. Beneficios

CAPITULO 3 VRML-JAVA-WWW

TEMA 2. Agenda. Fundamentos de JAVA

Java es el lenguaje de programación que

Sintaxis y Convenciones de Java. M. en C. Erika Vilches

GUÍA PARA LA CONFIGURACIÓN Y UTILIZACIÓN DE LA IDE DRJAVA

Pontificia Universidad Católica de Chile Escuela de Ingeniería Departamento de Ciencia de la Computación. IIC1102 Introducción a la Programación

Guía de Instalación de la JDK y del Eclipse

.NET y J2EE VALORACIÓN Y COMPARACIÓN DE LOS ELEMENTOS DE LAS DOS PLATAFORMAS. Definiciones...2 C# y Java...3 Similitudes...4 Ventajas...

Unidad I. Introducción a la programación de Dispositivos Móviles

Programación Java. M.C. Jorge Eduardo Ibarra Esquer Universidad Autónoma de Baja California

Java Básico. El entorno de desarrollo. Copyright

Introducción a Java LSUB. 15 de enero de 2015 GSYC

Sistema Web con Acceso a Bases de Datos Multiplataforma a Través de Teléfonos Celulares

Java. Mtro. Manuel Suárez Gutiérrez

Compilación y ejecución de programas en Java.

Programación para sistemas en red IV. Conceptos básicos II

Oracle 12c DISEÑO Y PROGRAMACIÓN

Introducción a la Tecnología

PONTIFICIA UNIVERSIDAD CATÓLICA DEL PERÚ FACULTAD DE CIENCIAS E INGENIERÍA LINUX-IDES: GRUPO DE INVESTIGACIÓN Y DESARROLLO EN GNU/LINUX

Modelo de Objetos Distribuidos

INTELIGENCIA ARTIFICIAL 2015 TALLER RÁPIDO DE PROGRAMACIÓN EN JAVA

Intervención General de la Administración del Estado

CURSO DE PROGRAMACIÓN EN JAVA J2EE 7 ÍNDICE

Capítulo VI. Conclusiones. En este capítulo abordaremos la comparación de las características principales y

App para realizar consultas al Sistema de Información Estadística de Castilla y León

Manual de instalación de Java Runtime Environment.

Visual Studio 2008 es el conjunto de herramientas de

Gestor de aplicaciones Java. Esta herramienta es el intérprete de los archivos de clase generados por el javac (compilador).

Java en 3 horas. Ampliación de Sistemas Operativos. Rodrigo Santamaría

Paquetes de java. java.applet

Entre los más conocidos editores con interfaz de desarrollo tenemos:

Lic. Sofia J. Vallejos

Introducción a la programación. Java

Proyecto ELO-330 Administración Salas del Departamento de Electrónica RC1. Gerardo Lecaros Felipe Díaz

U2. Introducción al desarrollo de aplicaciones móviles Smartphone y Android Desarrollo de Aplicaciones III TIC-UTSV Enero 2015 I.S.C.

Objetivo de aprendizaje del tema

III Jornadas de Tecnología Java. Java Destilado. Francisco Morero Peyrona Sun Ambassador Sun Awarded Engineer

Tema 1. Introducción a Java EE

INSTALACION MANUAL DE ECLIPSE EN UBUNTU

Lo que necesitaremos para programar en Java, será un editor de texto o IDE y la JDK.

Informática I para Bachillerato

INFRAESTRUCTURA Y COMUNICACIONES DGA

1

Introducción... 1 Qué es Java?... 1 Compilando a Bytecode... 1 Usando jgrasp Para Hacer el Trabajo Sucio... 5 El Entorno de jgrasp...

(Integrated Development Environment) Herramienta de soporte para el desarrollo de sotfware: Editor (escribir y editar programas); un

Windows Server Windows Server 2003

Capítulo 3 Instalación de OMNET

Modulo I. Introducción a la Programación Web. 1.1 Servidor Web.

Versión: 01. Fecha: 01/04/2013. Código: F004-P006-GFPI GUÍA DE APRENDIZAJE Nº 1 1. IDENTIFICACIÓN DE LA GUIA DE APRENDIZAJE

Universidad ORT - Arquitecturas de Software sobre plataforma JEE Web Services (parte 1)

Transcripción:

Tema 2: La Tecnología Java 0

La Tecnología de Java Es : Un lenguaje de programación Similar a C/C++ sin los problemas de manejo de memoria. Un ambiente de desarrollo Compilador, intérprete, generados de documento, herramientas de empaquetamiento. Un ambiente de aplicación Código portable Un ambiente de funcionalidad (deployment) EL SDK (Software Developer s Kit) o JDK (Java Development Kit), JRE (Java Runtime Enviroment), el soporte en web. 1

Grupos de la Tecnología de Java J2SE TM, Java TM 2 Platform Standar Edition. Creado para applets y aplicaciones que corren sin navegadores web y en una computadora respectivamente. J2EE TM, Java TM 2 Platform Enterprise Edition. Para aplicaciones distribuidads del lado del cliente y del servidor; aplciaciones web en un site (entornos colaborativos) respectivamente. J2ME TM, Java TM 2 Platform Micro Edition. Para crear aplicaciones en dispositivos con recursos limitados como los PDA s o los teléfonos móviles. 2

Grupos de la Tecnología de Java 3

J2SE El SDK está incluido en cada edición y permite a los programadores. Crear, compilar y ejecutar programas en Java. El J2SE SDK components incluye: JRE (1.5) : JVM Java class libreries Compilador Java Documentación para API Utilerías adicionales (ejem: crear archivos.jar). Ejemplos. 4

Versiones de J2SE Java 1 Java 1.0 (Enero 1996) :- 8 paquetes, 212 clases. Java 1.1 (Marzo 1997) - 23 paquetes, 504 clases. Java 2 Java 1.2 (Diciembre 1998 ) - 59 paquetes, 1520 clases Java 1.3 (Abril 2000) - 77 paquetes, 1595 clases Java 1.4 (2002) - 103 paquetes, 2175 clases - También conocido como Merlin Java 1.5 (Octubre 2004) - 131 paquetes, 2656 clases - También conocido como Tiger Actualmente se esta trabajando sobre Java 1.6 llamado Mustang. 5

Versión 1.5 Añade las siguientes características: Mecanismos de autoboxing y unboxing de tipos primitivos. Mejora a la sentencia de control for. Métodos con número de argumentos variable (varargs). Enumeraciones. Generics (templates de C++) proporcionan seguridad de tipos en tiempo de compilación. Imports estáticos. Metadatos. Nuevo método (printf) para generar salida por consola. 6

La arquitectura Java Una arquitectura o plataforma es un ambiente de SW o HW sobre el cuál se ejecuta un programa. Esta plataforma es de SW ya que se ejecuta sobre otra plataforma que es el sistema operativo. La plataforma java consta de: La JVM, Java Virtual Machine. El Garbage Collector EL JRE y La interfaz de herramientas de JVM. 7

J2SE 5.0 J2SE TM, Java TM 2 Platform Standar Edition 5.0. 8

JRE Java TM Runtime Environment es el entorno de ejecución de Java. Este paquete se SW contiene herramientas para ejecutar programas java, previamente compilados: The Java platform core classes. The JavaTM virtual machine. The Java TM tecnology plug-n. 9

La JVM La especificación de la JVM la define como: Una maquina imaginaria que es implementada para emularla en su software dentro de una máquina real. El código para la JVM es almacenado en los archivos.class, cada uno de los cuales contiene código para al menos una clase pública. Contiene el interprete de Java. 10

La JVM Las 3 principales tareas de la JVM son: Cargar del código. Verificar el Código. Executar el código. 11

JVM La especificación de JVM también proporciona definiciones concretas para la implementación, como: Registros. La pila o stack. El montículo del Garbage Collector. El área de métodos. El conjunto de instrucciones. 12

El Garbage Collector La recolección y liberación de memoria es responsabilidad de un thread llamado garbage collector (recolector automático de basura). El trabajo del GC es identificar objetos que no son usados y no requieren memoria. Se ejecuta automáticamente. 13

El Garbage Collector Un objeto es elegible para el GC cuando ya han perdido la referencia, es decir, objetos que ya no tienen ningún nombre que permita acceder a ellos, por ejemplo: Por haber llegado al final del bloque en el que habían sido definidos. Porque a la referencia se la ha asignado el valor null. Porque a la referencia se la ha asignado la dirección de otro objeto. 14

El Garbage Collector Nota importante: La JVM se hace cargo de iniciar el proceso de "Garbage Collection" únicamente cuando éste (según sus algoritmos internos) determine que su memoria esta en proceso de agotarse, es hasta entonces que es liberada la memoria de las instancias/referencias que se han declarado como elegibles para el GC. 15

System.gc() Existe un método llamado gc() dentro de las Clases java.lang.system y java.lang.runtime cuyas iniciales significan "Garbage Collection" y puede ser llamado por el programado directamente dentro de un programa Java. Pero el hecho de invocar este método explicitamente no implica que se realice el proceso de "Garbage Collection" inmediatamente, lo único que logra es expeditar (acelerar) los mecanismos para iniciar la recolección( depende de la JVM ). 16

finalize() Este método es miembro de la clase Object (por lo que todas las clase lo contienen). El objetivo de este método es liberar los recursos del sistema, como archivos o conexiones abiertas antes de empezar la recolección. Declaración por default: protected void finalize() { } Otra declaración: protected void finalize () throws throwable Para utilizar este método, hay que sobrecargarlo, proporcionando el código que contenga las acciones que se desee ejecutar antes de liberar la memoria consumida por el objeto. 17

La API API, Application Programming Interface es una colección de componentes de SW que proporcionan una amplia variedad de funcionalidades, como GUI, I/O, etc. Está agrupada en paquetes y librerías de componentes relacionados. Página web de la API //java.sun.com/j2se/5.0/docs/api/index.html 18

API en línea 19

Paquetes principales java.lang - clases esenciales, números, strings, objetos, compilador, runtime, seguridad y threads (es el único paquete que se incluye automáticamente en todo programa Java) java.io - clases que manejan entradas y salidas java.util - clases útiles, como estructuras genéricas, manejo de fecha, hora y strings, número aleatorios, etc. java.net - clases para soportar redes: URL, TCP, UDP, IP, etc. java.awt - clases para manejo de interface gráfica, ventanas, etc. java.awt.image - clases para manejo de imágenes java.sql- clases para el manejo de bases de datos (JDBC,JDBC- ODBC). java.security-clases e interfaces para el manejo de seguridad (criptografía, firmas digitales, encriptación y autenticación). java.applet - clases para la creación de applets y recursos para reproducción de audio. 20

IDE s Los IDE's ("Integrated Development Environment") ofrecen un ambiente gráfico en los que se tiene acceso a mayor número de herramientas no ofrecidas en los JDK's: Debuggers más elaborados. Check-points dentro de la compilación. Creación de WAR's (Web-Archives). "Wizards" para acelerar desarrollo, etc 21

IDE s Algunos IDE s : NetBeans, www.netbeans.org, Open- Source. Eclipse, www.eclipse.org, Open-Source. Sun Java Studio Enterprice, www.sun.com/software/sundev/jde/index.xml JBuilder, www.borland.com/jbuilder, de Borland. WebSphere Studio, http://www- 306.ibm.com/software/info1/websphere/i ndex.jsp?tab=products/studio, de IBM. JDeveloper, //otn.oracle.com/products/jdev/content.ht ml, de Oracle 22