Modelos De Datos
Enviado por ConGuaGH • 9 de Abril de 2013 • 1.838 Palabras (8 Páginas) • 589 Visitas
EVOLUCIÓN DE MODELO DE DATOS
MODELO ORIENTADO A OBJETOS
CONCEPTO:
Un objeto en BDOO como en POO es una entidad identificable unívocamente que describe tanto el estado como el comportamiento de una entidad del ‘mundo real’. El estado de un objeto es descrito mediante atributos mientras que su comportamiento es definido mediante métodos. En bases de datos orientadas a objetos, los usuarios pueden definir operaciones sobre los datos como parte de la definición de la base de datos. Está constituida por objetos, que pueden ser de muy diversos tipos, y sobre los cuales se encuentran definidas unas operaciones. Las bases de datos orientadas a objetos pueden manejar información binaria (como objetos multimedia) de una forma eficiente.
CARACTERÍSTICAS:
Las bases de datos orientadas a objetos (BDOO) se diseñan para trabajar con lenguajes de programación como Java, C#, C++ y Visual basic.Net
Las características asociadas a las BDOO son:
• Objetos: Es un elemento autocontenido utilizado por el programa. Los valores que almacena un objeto se denominan atributos, variables o propiedades. Los objetos pueden realizar acciones, que se denominan métodos, servicios, funciones, procedimientos u operaciones. Los objetos tienen un gran sentido de la privacidad, por lo que sólo dan información sobre sí mismos a través de los métodos que poseen para compartir su información. También ocultan la implementación de sus procedimientos, aunque es muy sencillo pedirles que los ejecuten. Para pedir datos a un objeto o que ´este realice una acción se le debe enviar un mensaje. Un programa orientado a objetos es un conjunto de objetos que tienen atributos y métodos. Los objetos interactúan enviándose mensajes. La clave, por supuesto, es averiguar qué objetos necesita el programa y cuáles deben ser sus atributos y sus métodos.
.
• La forma de identificar objetos es mediante un identificador de objetos (OID, Object Identifier), único para cada objeto. Generalmente este identificador no es accesible ni modificable para el usuario (modo de aumentar la integridad de entidades y la integridad referencial). Los OID son independientes del contenido. Es decir, si un objeto cambia los valores de atributos, sigue siendo el mismo objeto con el mismo OID. Si dos objetos tienen el mismo estado pero diferentes OID, son equivalentes pero tienen identidades diferentes.
• Encapsulamiento: cada objeto contiene y define procedimientos (métodos) y la interfaz mediante la cual se puede acceder a él y otros objetos pueden manipularlo.
• Otros conceptos utilizados de la misma manera que en la POO son:
o Clases Es un patrón o plantilla en la que se basan objetos que son similares. Todos los objetos creados a partir de la misma clase comparten los mismos procedimientos para sus métodos, también tienen los mismos tipos para sus datos, pero los valores pueden diferir. Una clase también es un tipo de datos. Una clase es una implementación de lo que se conoce como un tipo abstracto de datos.
o Tipos de clases En los programas orientados a objetos hay tres tipos de clases: clases de control, clases entidad y clases interface. Las clases de control gestionan el flujo de operación de un programa (por ejemplo, el programa que se ejecuta es un objeto de esta clase). Las clases entidad son las que se utilizan para crear objetos que manejan datos (por ejemplo, clases para personas, objetos tangibles o eventos). Las clases interface son las que manejan la entrada y la salida de información (por ejemplo, las ventanas gráficas y los menús utilizados por un programa).
o Herencia de atributos En ocasiones se necesita trabajar con clases que son similares pero no idénticas. Para ello es muy útil una de las características del paradigma orientado a objetos: la herencia. Una clase puede tener varias subclases que representan ocurrencias más específicas de la súperclase.
o Herencia múltiple y repetida.
o Polimorfismo de operación Propiedad de una operación mediante la cual puede ser aplicada a distintos tipos de objetos.
o Polimorfismo de inclusión y paramétrico; ligadura tardía (late binding); sobrecarga (overloading) y suplantación o anulación (overriding).
o Objetos complejos
o Interfaces Una interface es una especificación para una clase sin instrucciones en los métodos. Cada clase que implemente la interface proporcionará las instrucciones para cada método de la misma. Una interface puede contener atributos y métodos, o bien sólo atributos, o bien sólo métodos.
o Mandatorias son las que el Sistema debe satisfacer a orden de tener un sistema de BDOO y estos son: Objetos complejos, Identidad de Objetos, Encapsulación, Tipos o clases, Sobre paso con unión retardada, Extensibilidad, Completación Computacional, Persistencia y Manejador de almacenamiento secundario, Concurrencia, Recuperación y Facilidad de Query
• Opcional Son las que pueden ser añadidas para hacer el sistema mejor pero que no son Mandatorias, estas son de: herencia múltiple, chequeo de tipos e inferencia de distribución y diseño de transacciones y versiones.
• Abiertas Son los puntos donde el diseñador puede hacer un número de opciones y estas son el paradigma de la programación, la representación del sistema ó el tipo de sistema y su uniformidad. Hemos tomado una posición no muy a la expectativa para tener una palabra final más bien para proveer un punto de orientación para un debate futuro
VENTAJAS
• Manipula datos complejos de forma rápida
• Flexibilidad
• Elimina por completo la necesidad de ORMs1 (impedancia), con su consecuente mejora en desempeño.
DESVENTAJAS
• Mecanismos de consulta muy primitivos, sin un estándar independiente de la plataforma aceptado.
• Imposibilidad de procedimientos almacenados, ya que los objetos solo pueden ser consultados en el cliente. Inmadurez en el mercado No hay agrupamiento físico de objetos
• Su limitación suele residir en su especialización, ya que suelen estar diseñadas para un tipo particular de objetos (por ejemplo, una base de datos para un programa de CAD).
APLICACIÓN:
Las Bases de datos orientados a objetos se propusieron con la idea de satisfacer las necesidades de las aplicaciones más complejas. El enfoque orientado a objetos ofrece la flexibilidad para cumplir con algunos de estos requerimientos sin estar limitado por los tipos de datos y los lenguajes de consulta disponibles en los sistemas de bases de datos tradicionales.
EJEMPLO Y ESQUEMA:
MODELO ORIENTADO A DATOS
CONCEPTO:
Dados los requerimientos de información y proceso
...