El desarrollo del paradigma orientado a objetos aporta un gran cambio en el modo en que vemos los datos y los procedimientos que actúan sobre ellos. Tradicionalemente, los datos y los procedimientos se han almacenado separadamente: los datos y sus relaciones en la base de datos y los procedimientos en los programas de aplicación. La orientaci´on a objetos, sin embargo, combina los procedimientos de una entidad con sus datos.
Esta combinación se considera como un paso adelante en la gesti´on de datos. Las entidades son unidades autocontenidas que se pueden reutilizar con relativa facilidad. En lugar de ligar el comportamiento de una entidad a un programa de aplicaci´on, el comportamiento es parte de la entidad en sı, por lo en cualquier lugar en el que se utilice la entidad, se comporta de un modo predecible y conocido.
El modelo orientado a objetos también soporta relaciones de muchos a muchos, siendo el primer modelo que lo permite. Aun así se debe ser muy cuidadoso cuando se diseñan estas relaciones para evitar perdidas de información.
Por otra parte, las bases de datos orientadas a objetos son navegacionales: el acceso a los datos es a través de las relaciones, que se almacenan con los mismos datos. Esto se considera un paso atrás. Las bases de datos orientadas a objetos no son apropiadas para realizar consultas ad hoc, al contrario que las bases de datos relacionales, aunque normalmente las soportan. La naturaleza navegacional de las bases de datos orientadas a objetos implica que las consultas deben seguir relaciones predefinidas y que no pueden insertarse nuevas relaciones “al vuelo”.
No parece que las bases de datos orientadas a objetos vayan a reemplazar a las bases de datos relacionales en todas las aplicaciones del mismo modo en que ´estas reemplazaron a sus predecesoras. 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 h´ıbridos u objeto–relacionales: son SGBD relacionales que permiten almacenar 3 objetos en sus relaciones (tablas).
A continuaci´on se definen los conceptos del paradigma orientado a objetos en programaci´on, ya que el modelo de datos orientado a objetos es una extensi´on del mismo.
Objeto. 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´etodos, servicios, funciones, procedimientos u operaciones. Los objetos tienen un gran sentido de la privacidad, por lo que s´olo dan informaci´on sobre s´ı mismos a trav´es de los m´etodos que poseen para compartir su infomaci´on. Tambi´en ocultan la implementaci´on de sus procedimientos, aunque es muy sencillo pedirles que los ejecuten. Los usuarios y los programas de aplicaci´on no pueden ver qu´e hay dentro de los m´etodos, s´olo pueden ver los resultados de ejecutarlos. A esto es a lo que se denomina ocultaci´on de informaci´on o encapsulamiento de datos. Cada objeto presenta una interface p´ublica al resto de objetos que pueden utilizarlo. Una de las mayores ventajas del encapsulamiento es que mientras que la interface p´ublica sea la misma, se puede cambiar la implementaci´on de los m´etodos sin que sea necesario informar al resto de objetos que los utilizan. Para pedir datos a un objeto o que ´este realice una acci´on se le debe enviar un mensaje. Un programa orientado a objetos es un conjunto de objetos que tienen atributos y m´etodos. Los objetos interact´uan envi´andose mensajes. La clave, por supuesto, es averiguar qu´e objetos necesita el programa y cu´ales deben ser sus atributos y sus m´etodos.
Clase. Es un patr´on o plantilla en la que se basan objetos que son similares. Cuando un programa crea un objeto de una clase, proporciona datos para sus variables y el objeto puede entonces utilizar los m´etodos que se han escrito para la clase. Todos los objetos creados a partir de la misma clase comparten los mismos procedimientos para sus m´etodos, tambi´en tienen los mismos tipos para sus datos, pero los valores pueden diferir.
El modelo est´andar ODMG
Un grupo de representantes de la industria de las bases de datos formaron el ODMG (Object Database Management Group) con el prop´osito de definir est´andares para los SGBD orientados a objetos. Este grupo propuso un modelo est´andar para la sem´antica de los objetos de una base de datos. Su ´ultima versi´on, ODMG 3.0, apareci´o en enero de 2000. Los principales componentes de la arquitectura ODMG para un SGBD orientado a objetos son los siguientes:
Modelo de objetos.
Lenguaje de definici´on de objetos (ODL).
Lenguaje de consulta de objetos (OQL).
Conexi´on con los lenguajes C++, Smalltalk y Java
No hay comentarios:
Publicar un comentario