domingo, 31 de enero de 2010

Unidad I: Base de Datos Orientada a Objetos


INTRODUCCIÓN

¿Qué es una Base de Datos?
Una base de datos es una colección de datos relacionados entre sí que a su vez generan información. Una base de Datos (BD) está compuesto por Registros (también llamados Tuplas) Campos y Relaciones que forman una interfaz de usuario que se define por sí sola.

¿Qué es una Base de Datos Orientado a Objetos?
Una BDOO trata de almacenar en la base de datos los objetos completos (estado y comportamiento).

Los datos se representan por:
* Objetos.
* Entidades.
* Relaciones.

Características de una BDOO.
Las BDOO se diseñan para trabajar con lenguajes de programación como C#, C++ y Visual Basic.Net por decir algunos.

Al crear una BDOO se deben tener en cuenta 3 características principales:
1. Mandatorías.
2. Opcionales.
3. Abiertas.

Para saber más :
http://www.slideshare.net/Topicoa2010Laura/caractersticas-de-una-bdoo

Otra característica de las BDOO es que tienen Entidades Objeto. Esto es, que un sistema BDOO provee una identidad única a cada objeto independiente almacenado en la base de datos. En otras palabras, al guardar un dato en una base de datos automáticamente se crea un índice, un Id único para cada registro que crea un objeto independiente de los demás con sus propios atributos, es decir con características distintas pero sin perder la relación principal, su Clase. Un ejemplo sería la Clase Auto, al introducir los datos a la tabla, la tabla tendrá distintos campos, y por lógica no todos los registros mejor dicho los autos a introducir tienen las mismas características verdad? Pero todos pertenecen a la clase Auto pero cada uno independiente de los demás.

Otra característica que tienen las BDOO, es que poseen Constructores de Tipo. Estos constructores pueden construir objetos a partir de otros objetos. Existen tres tipos de constructores:
1. Constructores de Átomos.
2. Constructores de Tuplas.
3. Constructores de Conjuntos.

Para más información sobre Constructores: http://www.slideshare.net/Topicoa2010Laura/constructores-de-tipo-de-una-bdoo

Las BDOO son compatibles con SGBD (Sistema de Gestión de Bases de Datos) No Libres es decir que tengan Licencia, unos ejemplos son SQL SERVER, Microsoft Access, Oracle entre otros.

Jerarquías y Herencia.
Para realizar Herencias dentro de una Base de Datos se crean las Clases. Existen dos tipos de Clases que son: las Superclase y Subclase.

Donde las Superclase se refiere a las características en común entre objetos, y Subclase se refiere a las características en especifico de cada objeto pero pertenecen a una misma clase, los objetos de una subclase heredan los mismos atributos de los miembros mal altos, es decir, las Superclase.

Ejemplo:

Superclase
Class Persona
{
String Nombre();
String Dirección();
}

Subclase
Class Persona::Cliente
{
Int interés_prestamo();
}

Class Persona::Empleado
{
Date Fecha_alta();
Int sueldo();
}

Un sistema de BDOO debe satisfacer dos criterios:
1. Tener un DBMS (Sistema de Gestión de Base de Datos).
2. Ser un sistema Orientado a Objetos.

Definición de DBMS.
Un DBMS (por sus siglas en ingles Data Base Manegement System) es un tipo de
software muy específico, dedicado a servir de interfaz entre la base de datos, el usuario y las aplicaciones
que la utilizan.

Un DBMS tiene cinco características:
1. Persistencia: Conservación de los datos.
2. Concurrencia: Muchos usuarios.
3. Recuperación: Mantener el estado de la BD.
4. Gestión de Almacén Secundario: Backup locales o estáticas.
5. Facilidad de Consulta:

Características de un Sistema OO.
1. Abstracción. Denota características especiales.
2. Encapsulación. Ocultan secretos del objeto.
3. Tipos o Clases. Mismo comportamiento.
4. Modularidad. Abstracción con ciertas relaciones y minimiza dependencia/módulos.
5. Jerarquía. Ordenación de abstracciones.
6. Generasidad. Sirve de módulo para otras clases.
7. Concurrencia. Hacer varias consultas a la vez.
8. Persistencia. Resguardar la información de un objeto , pero a la vez también se refiere a poder recuperar la información y leerla para poder volver a utilizar la información.

DESARROLLO DE UN BDOO.
Por ejemplo: el comportamiento de un cilindro podría contener información referente a sus dimensiones, volumen, área superficial.

La clase cilindro tiene sus características que son su altura, radio, volumen y área de superficie; se define la clase Cilindro, definimos sus atributos dentro de unos corchetes {}.

Clase de Cilindro
{
Altura Flotante();
Radio Flotante();
Volumen Flotante();
Área de Superficie Flotante();
}

La implantación se lleva en el mismo lenguaje, escribiendo funciones correspondientes a las solicitudes OO.

Ahora se hace una subclase de la clase Cilindro. Se hace referencia a la clase, se ponen doble : para hacer énfasis que pertenece a la clase cilindro, después se desglosan sus atributos.

Ejemplo:

Cilindro :: Altura()
{
Retorna Cilindro – Altura();
}

Cilindro :: Volumen()
{
Retorna Pi*Radio()*Altura();
}

Para esto se debe de tener tres enfoques de construcción de BDOO:

PRIMERO:
· Utilización de código complejo (programación).
· Técnicas OO, medios sencillos para diseños complejos.
· Componentes ya probados.

SEGUNDO:
· Considera la BDOO extensión de BDR (Base de Datos Relacional).
· La BD debe proporcionar acceso aleatorio y por partes a grandes objetos.

TERCERO:
· Enfoque arquitecto de BD.
· Producen nueva arquitectura optimizada OO.
· Diversa y objetiva.
· BDOO no de relación más rápida.
· Esenciales aplicaciones como el CAD.

ARQUITECTURA VERSANT.
La Arquitectura de Versant esta diseñada al soporte Cliente Servidor con acercamiento en la computación distribuida; cualquier aplicación Cliente, el Servidor la procesa, usa las EDT y las máquinas que pueden cooperar en una BD distribuida de Versant.

Las BD pueden estar levantadas como un sistema m-Cliente/n-Servidor. Un Servidor en el medio ambiente de Versant es una máquina que está corriendo los procesos del servidor, esta soporta accesos concurrentes por usuarios múltiples de una ó más BD. Un cliente es un proceso de aplicación, este tiene acceso a espacios de trabajo de BD persistente privadas y también puede accesar a BD sobre servidores concurrentes con otras aplicaciones de Cliente.




No hay comentarios:

Publicar un comentario