Está en la página 1de 27

Base de datos orientada a

objetos VS base de datos


objeto relacional

Conceptos fundamentales
Objeto:

Es cualquier cosa real abstracta acerca de la cual almacenamos datos y los mtodos
que controlan dichos datos.
Tipo de Objeto: Es una categora de objeto.
Un objeto es una Instancia de un tipo de objeto. PERSONA (Juan Prez)
Encapsulamiento: Es el resultado (o acto) de ocultar los detalles de implantacin de un objeto
respecto de su usuario.
Una Solicitud: Invoca una operacin especfica, con uno ms objetos como parmetros. Es
decir, es para que se lleve acabo la operacin indicada y que se produzca el resultado. En
consecuencia las implantaciones se refieren a los objetos como solicitudes.
Clase: Es una implantacin de un tipo de objetos. Especifica una estructura de datos y los
mtodos operativos permisibles que se aplican a cada uno de sus objetos.
Tipos de mtodos: Hay varios tipos de mtodos que son comunes a la mayora de las clases:
Constructores: Un constructor es un mtodo que tiene el mismo nombre que la clase. Se
ejecuta cuando se crea un objeto de una clase. Por lo tanto, un constructor contiene
instrucciones para inicializar las variables de un objeto.
Destructores: Un destructor es un mtodo que se utiliza para destruir un objeto. No todos los
lenguajes orientados a objetos poseen destructores.
Accesores: Un accesor es un mtodo que devuelve el valor de un atributo privado de otro
objeto. As es como los objetos externos pueden acceder a los datos encapsulados.
Mutadores: Un mutador es un mtodo que almacena un nuevo valor en un atributo. De este
modo es como objetos externos pueden modificar los datos encapsulados.

Herencia:

Una clase implanta el tipo de objeto. Una Subclase hereda propiedades de su clase
padre, una subclase puede heredar la estructura y los mtodos algunos de los mtodos.
Herencia mltiple: Cuando una clase hereda de ms de una superclase se tiene herencia
mltiple.
Polimorfismo: Este concepto permite enlazar el mismo nombre o smbolo de operador a dos o
ms implementaciones diferentes del operador, dependiendo del tipo de objetos a los que ste
se aplique.
En las BDOO los datos estn encapsulados y se dice que estos son activos ms que pasivos;
debido a que por ejemplo: La clase mayor detecta si tiene un hijo (objeto) ms o uno menos, es
por esto que se dice que estn activos ya que cuentan los hijos u objetos que tiene.
En el modelo de objetos existen cuatro caractersticas fundamentales:
Abstraccin: Denota las caractersticas esenciales de un objeto que lo distinguen de todos los
dems tipos objeto, y proporciona as fronteras conceptuales ntidamente definidas respecto a la
perspectiva del observador. Una abstraccin se centra en la visin externa de un objeto, y, por
tanto sirve para separar el comportamiento esencial de un objeto de su implantacin.
Modularidad: Se basa en el concepto de fragmentacin de los programas en componentes
individuales para reducir su complejidad en algn grado, y para crear adems una serie de
fronteras bien definidas y documentadas dentro del programa, dnde estas fronteras o
interfaces tienen un incalculable valor cara a la comprensin del programa.
Jerarqua: Una clasificacin u ordenacin de abstracciones.
Tipos: Es un conjunto de objetos que tienen un mismo comportamiento (comparten una misma
funcionalidad) que se puede observar desde afuera.
Genericidad: Permite construir clases genricas para otras clases.
Objetos Complejos: Estn construidos mediante algunos ms simples mediante la aplicacin
de constructores a ellos. Los Objetos ms simples son objetos como: Integer, Carcter, String de
Bytes de cualquier longitud, booleanos punto flotante y algunos pueden ser de tipo atmico.

Qu es O.O.?
En esos mundos OO, el conocimiento se
descentraliza en todos los objetos que lo
componen, cada objeto sabe hacer lo suyo y
no le interesa saber cmo el vecino hace su
trabajo, pero sabe que lo hace y qu es lo que
puede hacer. Como bien lo defini Dan Ingalls
de Smalltalk con las siguientes palabras:
La orientacin a objetos proporciona una
solucin que conduce a un Universo de Objetos
bien educados que se piden de manera
corts, concederse mutuamente sus deseos.

Por qu O.O.?

La meta es dejar la etapa en la que


la construccin del software es una
labor de artesanos, y pasar a la etapa
en la que se pueda tener fbricas de
software, con gran capacidad de
reutilizacin
de
cdigo
y
con
metodologa eficientes y efectivas
que se apliquen al proceso de
produccin.

Base de Datos Orientada a


Objetos
A finales de los 80s aparecieron las primeras
BDOO, es una base de datos inteligente. Soporta
el paradigma orientado a objetos almacenando
datos y mtodos, y no slo datos. Est diseada
para ser eficaz, desde el punto de vista fsico,
para almacenar objetos complejos. Evita el acceso
a los datos; esto es mediante los mtodos
almacenados en ella. Es ms segura ya que no
permite tener acceso a los datos (objetos); esto
debido a que para poder entrar se tiene que hacer
por los mtodos que haya utilizado el
programador.

Caractersticas de
BDOO

Se intenta definir un sistema de BDOO y describe las principales caractersticas en tres grupos:
Mandatorias: son las que el Sistema debe satisfacer a orden de tener un sistema de BDOO y estos
son: Objetos complejos, Identidad de Objetos, Encapsulacin, Tipos o clases, Sobre paso con unin
retardada, Extensibilidad, Completacin Computacional, Persistencia y Manejador de
almacenamiento secundario, concurrencia, Recuperacin y Facilidad de Query.
Opcional: Son las que pueden ser aadidas para hacer el sistema mejor pero que no son
Mandatorias, estas son de: herencia mltiple, chequeo de tipos e inferencia de distribucin y diseo
de transacciones y versiones.
Abiertas: Son los puntos donde el diseador puede hacer un nmero de opciones y estas son el
paradigma de la programacin, la representacin del sistema el tipo de sistema y su uniformidad.
Hemos tomado una posicin no muy a la expectativa para tener una palabra final ms bien para
proveer un punto de orientacin para un debate futuro.
Caractersticas Mandatorias o Reglas de Oro
Un sistema de BDOO debe satisfacer dos criterios:
Debe tener un BDMS
Debe ser un sistema OO
Por ejemplo: para la extensin posible este debe ser consistente en los actuales cortes de lenguajes
de programacin OO
El primer criterio se traduce en 5 caractersticas como son: Persistencia, Manejador de
almacenamiento secundario, Concurrencia, Recuperacin, y Facilidad de Query.
La Segunda se traduce en 8 caractersticas: Objetos Complejos, Identidad del objeto, Encapsulacin,
Tipos Clases, Sobre paso con combinacin retrasada, Extensibilidad y Completacin
Computacional.

Caractersticas Obligatorias
Este es un punto que no debe faltar en una BD.

Predominancia combinada con enlace retardado: Se puede definir que sea


Excel, Autocad, etc. desde la programacin.
Extensibilidad: Proporciona los tipos de datos como: Caracter, booleano, String, etc.
Concurrencia: Permite que varios usuarios tengan acceso a una BD al mismo
tiempo.
Recuperacin: Cuando se hace una transaccin pero no se puede realizar y se
regresa al mismo estado.
Facilidad de Consultas a Modo: Esto es que se tienen diferentes estndares.
Caractersticas Opcionales
Esta depende del producto que se vaya a realizar.
Herencia Mltiple: Tienen caractersticas de padres diferentes y proporcionan
mecanismos para saber de 2 o ms opciones cual conviene.
Verificacin de tipos de inferencia
Distribucin: Que se puede tener parte de una BD en un servidor y otra parte en
otro.
Sistema de Representacin.- Forma en como se presentan los esquemas.
Uniformidad: Todo debe ser igual. Diseo de ventanas, etc.
Asociaciones y Cardinalidad de Asociaciones: Cardinalidad: 1:1 (Uno a Uno),1:M
(Uno a Muchos),M:1(Muchos a Uno),M:M (Muchos a Muchos).

Estructura de una
BDOO

El paradigma orientado a objetos se basa en el encapsulamiento de datos y


del cdigo relacionado con cada objeto en una sola unidad. Conceptualmente,
todas las interacciones entre cada objeto y el resto del sistema se realizan
mediante mensajes. Por lo 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
corresponden con los atributos del modelo E-R.
Un conjunto de mensajes a los que responde; cada mensaje puede o no
tener parmetros o tener uno o varios.
Un conjunto de mtodos, cada uno de los cuales es el cdigo que implementa
un mensaje; el mtodo devuelve un valor como respuesta al mensaje.
El Mensaje en entorno OO no implica uso de mensajes fsicos en redes
informticas. Por el contrario, hace referencia al intercambio de solicitudes
entre los objetos, independientemente de los detalles correctos de su
implementacin. Se utiliza a veces la expresin invocar un mtodo para
detonar al hecho de enviar un mensaje a un objeto y la ejecucin del mtodo
correspondiente.

Ejemplo: Clases de objetos


class empleado {
/ / Variables
string nombre;
strin direccin;
date fecha de alta;
int sueldo;
/ / Mensajes
int sueldo-anual ();
string obtenerNombre ();
string obtenerDireccion ();
int definirDireccion (string nueva-dir);
int antigedad();
};

Generalmente en una base de datos hay muchos objetos


similares (se entiende que responden a los mismos
mensajes, utilizan los mismos mtodos y tienen variables
del mismo nombre y tipo). Por tanto sera un derroche
definir por separado cada uno de estos objetos. Por tanto,
los objetos se agrupan para formar clases. Todos los
objetos de una clase comparten una definicin comn,
pese a que se diferencien en los valores asignados a las
variables.
El concepto de clase del modelo orientado a objetos se
corresponde con el concepto de entidad del modelo E-R.
El ejemplo Empleado muestra las variables y los mensajes
que responden a los objetos de la clase; no se muestran
aqu los mtodos para el tratamiento de los mensajes.

Ventajas de una BDOO


La clave que posee la BDOO es el poder que confieren al diseador para especificar tanto la
estructura de objetos complejos como las operaciones que se pueden aplicar a esos objetos.
Est su flexibilidad, y soporte para el manejo de tipos de datos complejos.Esto presenta la
ventaja adicional que una BDOO puede ajustarse a usar siempre el espacio de los campos
que son necesarios, eliminando espacio desperdiciado en registros con campos que nunca
usan.
Por ejemplo: En una base de datos convencional, si una empresa adquiere varios clientes
por referencia de clientes servicio, pero la base de datos existente, que mantiene la
informacin de clientes y sus compras, no tiene un campo para registrar quin proporcion la
referencia, de qu manera fue dicho contacto, o si debe compensarse con una comisin, sera
necesario reestructurar la base de datos para aadir este tipo de modificaciones. Por el
contrario, en una BDOO, el usuario puede aadir una subclase de la clase de clientes para
manejar las modificaciones que representan los clientes por referencia. La subclase heredar
todos los atributos, caractersticas de la definicin original, adems se especializar en
especificar los nuevos campos que se requieren as como los mtodos para manipular
solamente estos campos Naturalmente se generan los espacios para almacenar la
informacin adicional de los nuevos campos.
La segunda ventaja de una BDOO, es que manipula datos complejos en forma rpida y
gilmente. La estructura de la base de datos est dada por referencias (o apuntadores
lgicos) entre objetos.

Posibles desventajas de una BDOO


Al considerar la adopcin de la tecnologa orientada a objetos, la inmadurez
del mercado de BDOO constituye una posible fuente de problemas por lo
que debe analizarse con detalle la presencia en el mercado del proveedor
para adoptar su producto en la lnea de produccin sustantiva. Por eso en
este artculo se propone que se explore esta tecnologa en un proyecto
piloto.
El segundo problema es la falta de estndares en la industria orientadas a
objetos. Sin embargo, el Grupo Manejador de Objetos (OMG), es una
Organizacin Internacional de Proveedores de Sistemas de Informacin y
usuarios dedicada a promover estndares para el desarrollo de aplicaciones
y sistemas orientados a objetos en ambiente de cmputos de red. La
implantacin de una nueva tecnologa requiere que los usuarios iniciales
acepten cierto riesgo. Aquellos que esperan resultados a corto plazo y con
un costo reducido quedarn desilusionados. Sin embargo, para aquellos que
planean a un futuro intermedio con una visin tecnolgica avanzada, el uso
de tecnologa avanzada, el uso de tecnologa orientada a objetos,
paulatinamente compensar todos los riesgos.

Aspectos de la tecnologa
Los objetos pueden estar compuestos o consistir de cualquier tipo de informacin que,
eventualmente, puede almacenarse en forma digital; por ejemplo imgenes barridas
(Scaned), voz y sonido, dibujos y planos arquitectnicos complejos, esquemas electrnicos y
diagramas desarrollados por ingenieros, as como los tradicionales tipos de datos
alfanumricos.
Las Bases de Datos Orientadas a Objetos permiten que mltiples usuarios compartan objetos
complejos y los manipulen en un ambiente seguro y estructurado. Las bases de datos
convencionales fueron diseadas para manejar tipos de datos alfanumricos y por esto
difcilmente pueden manipular objetos y mtodos (los mtodos son los comportamientos
definidos de los objetos).
Una Base de datos en red o jerarqua puede almacenar objetos complejos, pero esta
arquitectura no es flexible, lo cual motiva, por ejemplo, el uso del modelo relacional. Estos
sistemas casi no permiten flexibilidad para modificaciones, y el sistema debe desactivarse
cuando se requiere modificar estructuras de objetos y mtodos.
Los niveles en los cuales las bases de datos incorporan los conceptos alrededor de la
metodologa de objetos. La primera clase, puede denominarse BDOO pasiva o
estructuralmente orientadas a objetos que permiten manejar objetos compuestos. Una base
de datos pasiva puede almacenar objetos complejos pero no puede definir comportamientos.
Una BDOO es activa u orientada a objetos por comportamiento si permite definir y ejecutar
comportamiento de los objetos dentro de la base de datos, incorpora conceptos como
herencia y permite el manejo de tipos definidos por el usuario.

Bases de Datos ObjetoRelacionales

El trmino base de datos objeto-relacional se usa para describir una


base de datos que ha evolucionado desde la modelo relacional hasta
una base de datos hbrida, que contiene ambas tecnologas: relacional y
de objetos.
El modelo objeto relacional tambin se conoce como el modelo
relacional extendido ya que incluye nuevas funciones y extensiones
soportadas por los objetos, actualmente las opinin sobre la definicin
del modelo objeto relaciona estn muy dividas, una definicin sencilla
podra ser:
El modelo objeto-relacional (ORDBMS) es similar a un front-end dentro
de una base de datos relacional que permite que los datos sean
grabados como objetos, sin embargo todos los metadatos y la
informacin siguen utilizando el sistema de filas y columnas para este
propsito de tal forma que la base de datos pueda ser accedida tambin
como una base de datos relacional. Y as mismo cuando los datos son
recuperados la base de datos tiene la capacidad de reconstruir
nuevamente los datos simples a objetos complejos.

Tipos de objetos

El modelo relacional est diseado para


representar los datos como una serie de
tablas con columnas y atributos. Oracle8 es
una base de datos objeto-relacional; es decir,
incorpora tecnologas orientadas a objetos. En
este sentido, permite construir tipos de
objetos complejos, entendidos como:
Capacidad para definir objetos dentro de
objetos.
Cierta capacidad para encapsular o asociar
mtodos con dichos objetos.

Estructura de un tipo de objeto


Un tipo de objeto consta de dos partes:
especificacin y cuerpo. La especificacin
constituye la interface a las aplicaciones;
aqu se declaran las estructuras de datos
(conjunto de atributos) y las operaciones
(mtodos) necesarios para manipular los
datos. El cuerpo define los mtodos, es
decir, implementa la especificacin. En la
figura 1 se representa grficamente la
estructura de un tipo de objeto.

Descripcin del modelo

Modelo de datos:
Actualmente todo modelo de datos que se categorize como modelo objeto-relacional cumple
con SQL3, pero conservando toda la informacin persistente como tablas cumpliendo tambin
esta forma con SQL2, sin embargo el modelo ORDBMS trae como alternativa la creacin de ADTs
(Abstract Data Types).
Un ADT es un tipo de datos construido a partir de los datos bsicos, este nuevo soporte es
atractivo porque por medio de funciones, operaciones de este nuevo tipo de datos pueden ser
usados como ndices, consultas, vistas permitido integrar un nuevo tipo de datos de objetos
como el multimedia.
Gracias a todas estas facilidades del ORDBMS permite que el desarrollador pueda escoger si
desea seguir desarrollando por medio de RDBMS y opcionalmente con ORDBMS. Adems es
posible abordar el diseo de nuestra base de datos pudiendo aprovechar todo las relaciones y la
composicin del paradigma de objetos as como soporte a lenguajes orientados a objetos.
Lenguaje de consultas:
Una base de datos objeto-relacional soporta una forma de SQL de forma extendida, a veces
conocida como ObjectSQL.
Esta nueva extensin soporta el modelo objeto, dichas consultas puede ser muy poderosas
porque pueden trabajar con las relaciones entre objetos, mtodos, funciones de bsqueda de
predicados y bsquedas a ADTs. Sin embargo la sintxis es muy similar a la relacional debido a
que el ORDBMS est basado en datos tipo RDBMS por medio de filas, columnas y SQL
tradicional. Se espera que para un futuro prximo la implementacin del estndar SQL4 permita
incorporar OQL el cual es un lenguaje netamente de objetos.

Sobre el diseo del


modelo

La novedad ms importante del modelo objeto relacional es la implementacin de los UDTs (user-defined types) y
de los UDFs (user-defined functions), los datos tipo coleccin y las infraestructuras (Mejoras en la indexacin,
nuevos tipos y funciones). El soporte del manejo de las abstracciones por medio de objetos permite que el modelo
conceptual sea desarrollado usando UML que finalmente facilita un buen diseo lgico. Pero primero pasemos a
definir que es un objeto segn el modelo ORDBMS para empezar a describir el diseo conceptual:
Qu es un objeto?
Los tipos de datos orientados a objetos son abstracciones de las entidades del mundo real que se guardan en la
base de datos, un objeto es un esquema compuesto por un OID (Y que puede manejarse como llave primaria), un
nombre, y un conjunto de mtodos.
Qu son los UDTs y UDFs?
Corresponden a los nuevos tipos de datos y nuevas funciones personalizadas por el usuario. Los UDTs se pueden
clasificar en 3 tipos: de tipo distintivo, tipo opaco o de base y tipo fila o compuesto.
Los datos de carcter opaco o de base son datos no derivados de otro tipo de datos, sus estructuras puede deben
ser definidas dentro del DBMS con sus respectivas operaciones y funciones. Despus de ser definidos pueden
usarse como base para la creacin de datos tipo distintivos y de tipo fila para ser usando en objetos. Los datos tipo
fila pueden incluir ms datos de tipo fila de forma anidada. Los datos de tipo distintivo son derivados de otro tipo
de datos, manejan sus propios dominios, operaciones (Sobrecarga) y funciones. De ah que su definicin como
objeto pueda ser fuertemente tipeada lo que ayuda a mejorar la integridad de los datos.
Dentro del modelo OR existen tres tipos de mtodos cada uno con un respectivo constructor, ellos son:
Mtodos tipo miembro: Permite modelar el comportamiento de los objetos
Mtodos tipos esttico: Permite modelar el objeto en su totalidad
Mtodo tipo comparacin: Permite realizar comparaciones entre el objeto original e instancias de este.
Tipo de coleccin:
Tipo Arreglo
Tipo tabla

Ambos tipos de colecciones son del mismo tipo de datos, sin


embargo su diferencia radica en que el tipo arreglo es un conjunto
ordenado, y limitado mientras que un tipo de tabla es un conjunto
desordenado y sin lmite alguno. Las tablas pueden anidarse siendo
manejadas por medio del objeto tipo fila.
Tambin el modelo ORDBMS soporta dos tipos de vistas, el viejo tipo
de vista clsica en una tabla y la nueva vista de tipo objeto. Por
medio de las vistas tipo objeto es posible crear tablas virtuales de
objetos que manejen UDTs y UDFs, las vistas de objeto tambin
tienen la ventaja de producir vistas con datos de tipo relacional
adjuntos a una vista objeto previa.
La infraestructura se denomina aquellos mdulos acompaantes
comprendido entre Cartdridges (Oracle 8i), datablades (Informix) y
extendedores (DB2). Este tipo de mdulos contenan nuevos tipo de
datos, estructuras y funciones e interfaces nuevas para los
desarrolladores.

Primer intento de
Estandarizacin: ODMG-93
La mayor limitacin de las bases de datos orientadas a objetos
es la carencia de un estndar. ODMG-93 (Object-Oriented
Database Management Group) intenta definir un SGBDOO que
integre las capacidades de las bases de datos con las
capacidades de los lenguajes de programacin, de forma que los
objetos de la base de datos aparezcan como objetos del
lenguaje de programacin, intentando de esta manera eliminar
la falta de correspondencia existente entre los sistemas de tipos
de ambos lenguajes .El SGBDOO extiende el lenguaje con
persistencia, concurrencia, recuperacin de datos, consultas
asociativas, etc. El lenguaje de bases de datos es especificado
mediante un lenguaje de definicin de datos (ODL), un lenguaje
de manipulacin de datos (OML), y un lenguaje de consulta
(OQL), siendo todos ellos portables a otros sistemas con el fin de
conseguir la portabilidad de la aplicacin completa.

Lenguaje ODL
El lenguaje de definicin de datos (ODL) en un SGBDOO es empleado
para facilitar la portabilidad de los esquemas de las bases de datos. El
ODL define las propiedades y los prototipos de las operaciones de los
tipos, pero no los mtodos que implementan esas operaciones. El ODL
intenta definir tipos que puedan implementarse en diversos lenguajes
de programacin; no est por tanto ligado a la sintaxis concreta de un
lenguaje de programacin particular. De esta forma un esquema
especificado en ODL puede ser soportado por cualquier SGBDOO que
sea compatible con ODMG-93.
Lenguaje OML
El lenguaje de manipulacin es empleado para la elaboracin de
programas que permitan crear, modificar y borrar datos que constituyen
la base de datos. ODMG-93 sugiere que este lenguaje sea la extensin
de un lenguaje de programacin, de forma que se pueden realizar entre
otras las siguientes operaciones sobre la base de datos: Creacin,
Borrado, Modificacin e Identificacin de un objeto.

Lenguaje OQL
El lenguaje de consulta propuesto por ODMG-93, presenta las siguientes
caractersticas:
No es computacionalmente completo. Sin embargo, las consultas pueden
invocar mtodos, e inversamente los mtodos escritos en cualquier
lenguaje de programacin pueden incluir consultas.
Tiene una sintaxis abstracta.
Su semntica formal puede definirse fcilmente.
Proporciona un acceso declarativo a los objetos.
Se basa en el modelo de objetos de ODMG-93.
Tiene una sintaxis concreta al estilo SQL, pero puede cambiarse con
facilidad.
Puede optimizarse fcilmente.
No proporciona operadores explcitos para la modificacin, se basa en las
operaciones definidas sobre los objetos para ese fin.
Proporciona primitivas de alto nivel para tratar con conjuntos de objetos,
pero no restringe su utilizacin con otros constructores de colecciones.
Existen dos posibilidades para asociar un sublenguaje de consulta a un
lenguaje de programacin: fuerte y dbilmente: El primer caso consiste
en una extensin de la gramtica del lenguaje asociado. En el segundo
caso, las funciones query tienen unos argumentos String que contienen
las preguntas.

Glosario BDOO: Bases de Datos Orientadas a Objetos


BDR: Bases de Datos por Relacin
BLOB: Objetos Binarios de Gran Tamao
BDOO94: Bases de Datos orientados a Objetos 94
CAD: Diseo Asistido por Computadora
CAE: Ingeniera Apoyada por computadora
CORBA: (Common Object Request Broker Arquitecture)
EDT: Estacin de Trabajo
A-TREE: Unico rbol para todas las clases de Jerarqua
H-TREE: Un rbol para cada clase en la Jerarqua
LDD DDL: Lenguaje de definicin de Datos
LMD DML: Lenguaje de Manejo de Datos

LOBS: Tales como Vdeo, Programas


Ejecutables etc.
OO: Orientacin a Objetos
ODL: Estndar de Definicin de Lenguaje de
Datos
OMG: Grupo Manejador de Objetos
OML: Lenguaje de Manipulacin de Datos
ODMG: Gestin Manejadora de datos Objeto
OQL: Equivalente al SQL(Lenguaje de Consulta)
SQL: Lenguaje de Consulta
SGBD: Sistema de Gestin de Bases de Datos
SGBDOO: Sistema de Gestin de Bases de
Datos Orientada a Objeto
SO: Sistema Operativo

También podría gustarte