Está en la página 1de 40

Edwar Andrs Ruiz Medina @EdwarRuiz324 Andrs Felipe Montoya Ros re.

vu/AndresMontoya @montoya118

Conceptos bsicos

Clase: definiciones de las propiedades y comportamiento de un tipo de objeto concreto. La instanciacin es la lectura de estas definiciones y la creacin de un objeto a partir de ellas.

Objeto: entidad provista de un conjunto de propiedades o atributos (datos) y de comportamiento o funcionalidad (mtodos) los mismos que consecuentemente reaccionan a eventos. Se corresponde con los objetos reales del mundo que nos rodea, o a objetos internos del sistema (del programa). Es una instancia a una clase.

Herencia simple: 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 mas de una superclase se tiene herencia mltiple.

Mtodo: Algoritmo asociado a un objeto (o a una clase de objetos), cuya ejecucin se desencadena tras la recepcin de un "mensaje". Desde el punto de vista del comportamiento, es lo que el objeto puede hacer. Un mtodo puede producir un cambio en las propiedades del objeto, o la generacin de un "evento" con un nuevo mensaje para otro objeto del sistema.

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.

SOBRECARGA DE MTODOS: Una de las caractersticas de las clases es que pueden tener mtodos sobrecargados, que son mtodos que tienen el mismo nombre pero que necesitan distintos datos para operar.
POLIMORFISMO: En general, las subclases heredan los mtodos de sus superclases y los utilizan como si fueran suyos. Sin embargo, en algunas ocasiones no es posible escribir un mtodo genrico que pueda ser usado por todas las subclases.

Evento: Es un suceso en el sistema (tal como una interaccin del usuario con la mquina, o un mensaje enviado por un objeto). El sistema maneja el evento enviando el mensaje adecuado al objeto pertinente. Tambin se puede definir como evento, a la reaccin que puede desencadenar un objeto, es decir la accin que genera.

Caractersticas asociadas al POO

Abstraccin: consiste en captar las caractersticas esenciales de un objeto, as como su comportamiento. Ejemplo. Qu caractersticas semejantes tienen todos los automviles? Todos tendrn una marca, un modelo, nmero de chasis, peso, llantas, puertas, ventanas, etc. Y en cuanto a su comportamiento todos los automviles podrn acelerar, frenar, retroceder, etc.

Ocultamiento: Es la capacidad de ocultar los detalles internos del comportamiento de una Clase y exponer slo los detalles que sean necesarios para el resto del sistema. El ocultamiento permite 2 cosas: restringir y controlar el uso de la Clase.

Encapsulamiento: Consiste en unir en la Clase las caractersticas y comportamientos, esto es, las variables y mtodos. Es tener todo esto es una sola entidad. La utilidad del encapsulamiento va por la facilidad para manejar la complejidad, ya que tendremos a las Clases como cajas negras donde slo se conoce el comportamiento pero no los detalles internos, y esto es conveniente porque nos interesar ser conocer qu hace la Clase pero no ser necesario saber cmo lo hace.

Los SGBDOO son creados gracias a la falta de capacidad semntica del modelo relacional con el propsito de atender nuevos tipos de aplicaciones.
o o o o o o

Diseo y fabricacin en ingeniera Bases de datos graficas y de imgenes Bases de datos cientficas Sistemas de informacin geogrficas Bases de datos multimedia Accesos uniforme a sistemas de mltiples bases de datos

Otro motivo para la creacin de las bases de datos orientadas a objetos es el creciente uso de los lenguajes orientados a objetos para el desarrollo de aplicaciones.

Los objetos han entrado en el mundo de las bases de datos de formas:

SGBD orientados a objetos puros: son SGBD basados completamente en el modelo orientado a objetos. SGBD hbridos u objetorelacionales: son SGBD relacionales que permiten almacenar objetos en sus relaciones (tablas).

Relaciones

Las bases de datos relacionales representan las relaciones mediante las claves ajenas. las bases de datos orientadas a objetos implementan sus relaciones incluyendo en cada objeto los identificadores de los objetos con los que se relaciona. Un identificador de objeto es un atributo interno que posee cada objeto. Ni los programadores, ni los usuarios que realizan consultas de forma interactiva, ven o manipulan estos identificadores directamente. Los identificadores de los objetos los asigna el SGBD y es el nico que los utiliza.

Integridad de las relaciones

Para que las relaciones funcionen en una base de datos orientada a objetos pura, los identificadores de los objetos deben corresponderse en ambos extremos de la relacin. La clase Aparejador tiene un atributo de tipo conjunto llamado supervisa. Del mismo modo, la clase Obra tiene un atributo llamado es supervisada. Para garantizar la integridad de esta relacin, un SGBD orientado a objetos puro deber permitir que el diseador de la base de datos pueda especificar donde debe aparecer el identificador del objeto inverso

Ejemplo de relaciones

relationship set<Obra> supervisa inverse Obra::es supervisada

en la clase Aparejador y:
relationshipAparejador es supervisada inverse Aparejador::supervisa

HERENCIA EN BDOO
En teora, una base de datos orientada a objetos debe soportar dos tipos de herencia: la relacin es un y la relacin extiende.

La relacin es un, tambin se conoce como generalizacinespecializacin, crea una jerarqua donde las subclases son tipos especficos de las superclases. Con la relacin extiende, sin embargo, una clase expande su superclase en lugar de estrecharla en un tipo ms especfico.

El modelo estndar ODMG


Un grupo de representantes de la industria de las bases de datos formaron el ODMG (ObjectDatabase Management Group) con el propsito de definir estndares para los SGBD orientados a objetos. Este grupo propuso un modelo estndar para la semntica de los objetos de una base de datos.
Los principales componentes de la arquitectura ODMG para un SGBD orientado a objetos son los siguientes:

Modelo de objetos. Lenguaje de definicin de objetos (ODL). Lenguaje de consulta de objetos (OQL). Conexin con los lenguajes C++, Smalltalk y Java.

MODELO DE OBJETOS

El modelo de objetos ODMG permite que tanto los diseos, como las implementaciones, sean portables entre los sistemas que lo soportan. Dispone de las siguientes primitivas de modelado: Los componentes bsicos de una base de datos orientada a objetos son los objetos y los literales: Un objeto es una instancia auto contenida de una entidad de inters del mundo real. Los objetos tienen algn tipo de identificador nico. Un literal es un valor especifico, como Amparo o 36. Los literales no tienen identificadores.

Los objetos pueden ser transitorios o persistentes.

Los objetos transitorios existen mientras vive el programa de aplicacin que los ha creado. Estos objetos se usan tanto como almacenamiento temporal como para dar apoyo al programa de aplicacin que se est ejecutando. Los objetos persistentes son aquellos que se almacenan en la base de datos.

Mtodos usados

Mapeo objeto-relacional

Sistema de administracin de base de datos orientado a objetos

Lenguaje de Consulta de Objetos (OQL)

OQL es un lenguaje declarativo del tipo de SQL que permite realizar consultas de modo eficiente sobre bases de datos orientadas a objetos. OQL no posee primitivas para modificar el estado de los objetos ya que las modificaciones se pueden realizar mediante los mtodos que estos poseen. La sintaxis bsica de OQL es una estructura SELECT...FROM...WHERE..., como en SQL. Por ejemplo, la siguiente expresin obtiene los nombres de los departamentos de la escuela de Ingeniera: SELECT D. Nombre FROM d in departamentos WHERE D. Escuela = `Ingenieria';

Existen otras maneras de realizar consultas en las bases de datos orientadas a objetos que pueden llegar a resultar ms sencillas que por intermedio del lenguaje OQL

Basada en patrones: A la consulta se le da un objeto patrn, al cual se le dan las mismas caractersticas (dar valor a sus atributos) de losobjetos que se estn buscando. La consulta devuelve el conjunto de objetos que tienen dichas caractersticas.

Basadas en API: A travs mtodos de clases especiales, se especifican de forma programtica las restricciones que deben cumplir los datos a consultar.

Consultas nativas: Se crean nuevas clases en las cuales se programan los condicionales que se usarn durante la consulta.

REGLAS DE ORO PARA QUE UNA BD SEA OO

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
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.

o o o

OPCIONAL: Son las que pueden ser aadidas para hacer el sistema mejor pero que no son mandatorias,

Herencia Mltiple: Tienen caractersticas de padres diferentes y proporcionan mecanismos para saber de 2 o ms opciones cual conviene.
Distribucin: Que se puede tener parte de una BD en un servidor y otra parte en otro.

Sistema de Representacin: Forma en cmo se presentan los esquemas.

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.

Ventajas de los SGBDOO


o o o

Mayor capacidad de modelado: Un objeto permite encapsular tanto un estado como un comportamiento. Un objeto puede almacenar todas las relaciones que tenga con otros objetos. Los objetos pueden agruparse para formar objetos complejos (herencia). Aplicabilidad: Se pueden construir nuevos tipos de datos a partir de los ya existentes Agrupar propiedades comunes de diversas clases e incluirlas en una superclase, lo que reduce la redundancia. Reusabilidad de clases, lo que repercute en una mayor facilidad de mantenimiento y un menor tiempo de desarrollo.

o
o

Lenguaje de consulta ms expresivo: o El acceso navegacional desde un objeto al siguiente es la forma ms comn de acceso a datos en un SGBDOO. Mientras que SQL utiliza el acceso asociativo. o El acceso navegacional es ms adecuado para gestionar operaciones como los despieces, consultas recursivas, etc.

Adecuacin a las aplicaciones avanzadas de base de datos. o Hay muchas reas en las que los SGBD tradicionales no han tenido excesivo xito como el CAD, CASE, OIS, sistemas multimedia, etc. en los que las capacidades de modelado de los SGBDOO han hecho que esos sistemas s resulten efectivos para este tipo de aplicaciones.
o

Mayores prestaciones. Los SGBDOO proporcionan mejoras significativas de rendimiento con respecto a los SGBD relacionales.

DESVENTAJAS DE LOS SGBDOO


o

Carencia de un modelo de datos universal. No hay ningn modelo de datos que est universalmente aceptado para los SGBDOO y la mayora de los modelos carecen una base terica. Carencia de experiencia. Todava no se dispone del nivel de experiencia del que se dispone para los sistemas tradicionales. Carencia de estndares. Existe una carencia de estndares general para los SGBDOO.

Competencia. Con respecto a los SGBDR y los SGBDOR.


Estos productos tienen una experiencia de uso considerable. SQL es un estndar aprobado y ODBC es un estndar de facto. Adems, el modelo relacional tiene una slida base terica y los productos relacionales disponen de muchas herramientas de soporte que sirven tanto para desarrolladores como para usuarios finales.

La optimizacin de consultas compromete la encapsulacin.


La optimizacin de consultas requiere una compresin de la implementacin de los objetos, para poder acceder a la base de datos de manera eficiente. Sin embargo, esto compromete el concepto de encapsulacin.

El modelo de objetos an no tiene una teora matemtica coherente que le sirva de base.

DIFERENCIA ENTRE EL MODELO DE OBJETOS Y EL MODELO RELACIONAL


SGBD Relacionales

Los datos residen en la base de datos y los procesos se encuentran en las aplicaciones desarrolladas mediante el lenguaje de datos asociado al SGBD(SQL) inmerso en un lenguaje de programacin. Desarrollo bajo Sistemas Relacionales: Modelo conceptual de datos modelo lgico

Eficientes para aplicaciones tradicionales de negocios.

SGBD Orientados a objetos

Gestionan objetos en los cuales estn encapsulados los datos y las operaciones que actan sobre ellos. Desarrollo bajo SGBDOO: un nico modelo subyacente, implementado en el SGBBOO, al que pueden acceder directamente las aplicaciones. Intentan satisfacer necesidades de aplicaciones ms complejas.

Caracterstica clave: poder que dan al diseador de la base de datos tanto para especificar la estructura de los objetos complejos como las operaciones que se pueden aplicar a estos objetos.

También podría gustarte