Conceptos B ásicos para entender JAVA

17
ALGUNOS TÉRMINOS IMPORTANTES SOBRE LOS QUE SE FUNDAMENTA LA PROGRAMACIÓN EN JAVA Conceptos Básicos para entender JAVA JOSÉ LUIS REDONDO GARCÍA. GRUPO QUERCUS ENGINEERING SOFTWARE, UEX

description

Conceptos B ásicos para entender JAVA. Algunos T érminos importantes sobre los que se fundamenta la programaci ón en JAVA. José Luis Redondo García. Grupo Quercus Engineering Software, UEX. CONCEPTOS CLAVE. Programaci ón Orientada a Objetos. M áquina Virtual Java. - PowerPoint PPT Presentation

Transcript of Conceptos B ásicos para entender JAVA

Page 1: Conceptos B ásicos para  entender JAVA

ALGUNOS TÉRMINOS IMPORTANTES SOBRE LOS QUE SE FUNDAMENTA LA

PROGRAMACIÓN EN JAVA

Conceptos Básicos para entender JAVA

JOSÉ LUIS REDONDO GARCÍA. GRUPO QUERCUS ENGINEERING SOFTWARE, UEX

Page 2: Conceptos B ásicos para  entender JAVA

E.T.S de Ingenieros de Telecomunicación - UPNA

22/11/2005

.2

CONCEPTOS CLAVE

PROGRAMACIÓN ORIENTADA A OBJETOS.MÁQUINA VIRTUAL JAVA.GESTIÓN DE MEMORIA Y RECOLECTOR DE

BASURA.

Page 3: Conceptos B ásicos para  entender JAVA

Paradigma de P.O.O

Paradigma estructurado o procedural: Los programas se dividen en procedimientos independientes con acceso total a los datos comunes.

Algortimos + Estructuras de Datos = Programas

Paradigma orientado a objetos: Los datos se consideran la parte más importante del programa. Los objetos modelan las características de los problemas del mundo real, su comportamiento ante estas caracteristicas y su forma de interactuar con otros elementos

Objetos + mensajes = Programas

Page 4: Conceptos B ásicos para  entender JAVA

Ejemplo: Tomarse un café en la panadería

Procedural: El cliente entra el la

panadería El cliente pasa detrás

de la barra El cliente prepara la

cafetera El cliente se sirve el

café El cliente se bebe el

café.

OO: El cliente entra en la

panadería El cliente pide un

café al “cafetero” El “cafetero” prepara

el café. El “cafetero” sirve el

café al cliente. El cliente se bebe el

café.

Page 5: Conceptos B ásicos para  entender JAVA

Programación Orientada a Objetos

Vehículo

Animal

Figura

Page 6: Conceptos B ásicos para  entender JAVA

ConceptoGeneralmente, una clase se puede definir como una descripción abstracta de un grupo de objetos, cada uno de los cuales tiene una serie de atributos, un estado específico y es capaz de realizar una serie de operaciones.

Clases

Atributos Operaciones Comportamiento

Lavadoramarcamodelocapacidad...

ProgramarPonerRopaCerrarPuertaLavar

Page 7: Conceptos B ásicos para  entender JAVA

Objetos

Concepto:Un objeto, no es más que una instancia de una clase. La instancia de una clase significa definir un objeto dándole valores a sus atributos y comportamiento, y realizando operaciones permitidas por la clase.

Valores de los atributos

Estado Identidad

ID:Lavadora

marca=“Lapava”capacidad=5estado=enjuagando

Page 8: Conceptos B ásicos para  entender JAVA

Programación Orientada a Objetos

Definición:La POO es un estilo de programación, donde todos los elementos que forman parte del problema se conciben como objetos, definiendo cuales son sus atributos y comportamiento, como se relacionan entre sí y como están organizadas.

Estructura Interna de un Objeto:

Atributos: Define el estado del objeto

Métodos: Define el comportamiento del objeto

Page 9: Conceptos B ásicos para  entender JAVA

Ventajas de P.O.O

Encapsulamiento: Permite la protección de ciertas partes de un objeto del acceso desde otros objetos externos

Herencia: Jerarquía de clases basada en la agrupación de atributos o métodos comunes

Polimorfismo: Tratamiento generalizado a todas las clases pertenecientes a una jerarquía de herencia.

Page 10: Conceptos B ásicos para  entender JAVA

Máquina Virtual Java

Es la base de que Java esté en todos sitios:

Page 11: Conceptos B ásicos para  entender JAVA

Código fuente

Compilador Java

Byte-codes

Win32 JVM

Código máquinaWin32

Macintosh JVM UNIX JVM

Código máquinaMacintosh

Código máquinaUNIX

Máquina Virtual Java

Page 12: Conceptos B ásicos para  entender JAVA

E.T.S de Ingenieros de Telecomunicación - UPNA

22/11/2005

.12

Máquina Virtual Java

Compilador tradicional

• Traslada sentencias alto-nivel a múltiples instrucciones.

• Creación de librerías como resultado de compilaciones previas.

• Juntando, se crea programa ejecutable.

Intérprete de ByteCodes

• Compilador Java

Traduce código fuente a código intermedio.

• Interprete de Java

Virtual Machine(JVM)

(ByteCodes interpretados (ejecutados))

Page 13: Conceptos B ásicos para  entender JAVA

E.T.S de Ingenieros de Telecomunicación - UPNA

22/11/2005

.13

Ventajas M.V.

No se interrumpe fácilmente.Evita sobreescribir o corromper memoria

mediante punteros.Manejo de excepciones.Verificación de ByteCodes (por ejemplo no

acceso ilegal de memoria).

Page 14: Conceptos B ásicos para  entender JAVA

E.T.S de Ingenieros de Telecomunicación - UPNA

22/11/2005

.14

Aplicaciones seguras ya que no acceden a zonas delicadas de memoria o de sistema

No existen punteros, no acceso a zonas delicadas de memoria.

Una applet no puede acceder al sistema, a los archivos de la persona que lo está viendo.

Ventajas M.V.

Page 15: Conceptos B ásicos para  entender JAVA

E.T.S de Ingenieros de Telecomunicación - UPNA

22/11/2005

.15

Java compila el código a un fichero objeto de formato independiente de la arquitectura de la máquina en que se ejecutará.

Cualquier plataforma donde exista una JVM se puede ejecutar el código objeto independientemente de la máquina en el que ha sido generado.

Ventajas M.V.

Page 16: Conceptos B ásicos para  entender JAVA

Recolector de Basura

La memoria reservada dinámicamente que no se vaya a usar más debe ser liberada.

En otros lenguajes, esta liberación debe realizarla el propio programador.

La JVM dispone de un proceso que rastrea las operaciones de memoria: el Garbage Collector.

Verifica y libera la memoria que no se necesita

Se ejecuta automáticamente

Puede variar según la implementación de la JVM.

Page 17: Conceptos B ásicos para  entender JAVA

Recolector de Basura