Translate

viernes, 21 de noviembre de 2014

RESUMEN UNIDAD VII


BASES DE DATOS ORIENTADAS A OBJETOS.



Necesidad de los tipos de datos complejos.

Las aplicaciones de bases de datos tradicionales consisten en tareas de procesamiento de datos, tales como la banca y la gestión de nóminas. Dichas aplicaciones presentan conceptualmente tipos de datos simples. En los últimos años, la demanda ha incrementado las formas de abordar los tipos de datos más complejos.Mientras una dirección completa puede ser vista como un elemento de datos atómico de tipo cadena de caracteres, esta forma de verlo escondería detalles como la calle, la población, la provincia, y el código postal que podrían ser interesantes para las consultas. Por otra parte, si una dirección se representa dividiéndola en componentes (calle, población, provincia y código postal)
las consultas escritas serían más complicadas, pues tendrían que mencionar cada campo. Una alternativa mejor es permitir tipos de datos estructurados, que admiten un tipo dirección con subpartes calle, población, provincia y código postal.

Modelado de datos orientado a objetos.

Estructura de los objetos

Hablando en general, los objetos se corresponden con las entidades del modelo E-R. El paradigma orientado a objetos está basado en el encapsulamiento de los datos y del código relacionados con cada objeto en una sola unidad cuyo contenido no es visible desde el exterior. Conceptual mente, todas las interacciones entre cada objeto y el resto del sistema se realizan mediante mensajes. Por tanto, la interfaz entre cada objeto y el resto del sistema se define mediante un conjunto de mensajes permitidos. En general, cada objeto está asociado con;
• Un conjunto de variables que contiene los datos del objeto; las variables se corresponden con los atributos del modelo E-R.

• Un conjunto de mensajes a los que responde; cada mensaje puede no tener parámetros, tener uno o
varios.

• Un conjunto de métodos, cada uno de los cuales es código que implementa un mensaje; el método
devuelve un valor como respuesta al mensaje.


Clases de objetos

Generalmente, en una base de datos hay muchos objetos similares. Por similar se entiende que responden a los mismos mensajes, utilizan los mismos métodos y tienen variables del mismo nombre y del mismo tipo. Sería un derroche definir por separado cada uno de estos objetos. Por tanto, los objetos parecidos se agrupan para formar una clase. Cada uno de estos objetos se denomina ejemplar de su clase. Todos los objetos de una 194 clase comparten una definición común, pese a que se diferencien en los valores asignados a las variables.


Herencia

Los esquemas de las bases de datos orientadas a objetos suelen necesitar gran número de clases. Frecuentemente, sin embargo, varias de las clases son parecidas entre sí. Por ejemplo, supóngase que se tiene una base de datos orientada a objetos en la aplicación bancaria. Cabe esperar que la clase de los clientes del banco sea parecida a la clase de los empleados en que ambas definan variables para nombre, dirección, etcétera. Sin embargo, hay algunas variables específicas de los empleados (sueldo, por ejemplo) y otras específicas de los clientes (interés-préstamo, por ejemplo). Sería conveniente definir una representación de las variables comunes en un solo lugar. Esto sólo puede hacerse si se combinan los empleados y los clientes en una sola clase. Para permitir la representación directa de los parecidos entre las clases hay que ubicarlas en una jerarquía de especializaciones (la relación «ES») como la definida en el Capítulo 2 para el modelo entidad-relación. Por ejemplo, se puede decir que empleado es una especialización de persona, dado que el conjunto de los empleados es un subconjunto del conjunto de personas. Es decir, todos los empleados son personas. De manera parecida, cliente es una especialización de persona. El concepto de jerarquía de clases es parecido al de especialización del modelo entidad-relación. Los empleados y los clientes pueden representarse mediante clases que son especializaciones de la clase persona. Las variables y los métodos específicos de los empleados se asocian con la clase empleado. Las variables y los métodos específicos de los clientes se asocian con la clase cliente. Las variables y los métodos que se aplican tanto a empleados como a clientes se asocian con la clase persona.

Herencia múltiple

La herencia múltiple permite a las clases heredar variables y métodos de múltiples superclases. La relación entre clases y subclases se representa mediante un grafo acíclico dirigido (GAD) en el que las clases pueden tener más de una superclase.


Identidad de los objetos

Los objetos de las bases de datos orientadas a objetos suelen corresponder a entidades del sistema modelado por la base de datos. Las entidades conservan su identidad aunque algunas de sus propiedades cambien con el tiempo. De manera parecida, los objetos conservan su identidad aunque los valores de las variables o las definiciones de los métodos cambien total o parcialmente con el tiempo. Este concepto de identidad no se aplica a las tuplas de las bases de datos relacionales. En los sistemas relacionales las tuplas de una relación sólo se distinguen por los valores que contienen. La identidad de los objetos es un concepto de identidad más potente que el que suele hallarse en los lenguajes de programación o en los modelos de datos que no se basan en la programación orientada a objetos.



Continentes de objetos

Se pueden utilizar las referencias entre objetos para modelar diferentes conceptos del mundo real. Uno de estos objetos es el de continentes de objetos.


Lenguajes Orientados a Objetos.

Hasta el momento se han abordado los conceptos básicos de la programación orientada a objetos en un nivel abstracto. Para poder utilizarlos en la práctica en un sistema de bases de datos hay que expresarlos en algún lenguaje. Esta expresión puede realizarse de dos maneras:

1. Los conceptos de la programación orientada a objetos se utilizan simplemente como herramientas de diseño y se codifican, por ejemplo, en una base de datos relacional. Se sigue este enfoque cuando se utilizan los diagramas entidad-relación para modelar los datos y luego se convierten de manera manual en un conjunto de relaciones.

2. Los conceptos de la programación orientada a objetos se incorporan en un lenguaje que se utiliza para trabajar con la base de datos.

No hay comentarios.:

Publicar un comentario