Las aplicaciones de las bases de datos en áreas como el diseño asistido por computadora, la ingeniería de software y el procesamiento de documentos no se ajustan al conjunto de suposiciones que se hacen para aplicaciones del estilo de procesamiento de datos. El modelo de datos orientado a objetos se ha propuesto para tratar algunos de estos nuevos tipos de aplicaciones.
El modelo de bases de datos orientado a objetos es una adaptación a los sistemas de bases de datos. Se basa en el concepto de encapsulamiento de datos y código que opera sobre estos en un objeto. Los objetos estructurados se agrupan en clases. El conjunto de clases está estructurado en sub y superclases basado en una extensión del concepto ISA del modelo Entidad - Relación. Puesto que el valor de un dato en un objeto también es un objeto, es posible representar el contenido del objeto dando como resultado un objeto compuesto.
Estructura de objetos
El modelo orientado a objetos se basa en encapsular código y datos en una única unidad, llamada objeto. El interfaz entre un objeto y el resto del sistema se define mediante un conjunto de mensajes.
Un objeto tiene asociado:
Un conjunto de variables que contienen los datos del objeto. El valor de cada variable es un objeto.
Un conjunto de mensajes a los que el objeto responde.
Un método, que es un trozo de código para implementar cada mensaje. Un método devuelve un valor como respuesta al mensaje.
El término mensaje en un contexto orientado a objetos, no implica el uso de un mensaje físico en una red de computadoras, si no que se refiere al paso de solicitudes entre objetos sin tener en cuenta detalles específicos de implementación.
La capacidad de modificar la definición de un objeto sin afectar al resto del sistema está considerada como una de las mayores ventajas del modelo de programación orientado a objetos.
Constructores de tipo
Constructores de conjunto
Son cruciales porque son una forma natural de representar las colecciones del mundo real y se utilizan para definir atributos multi-elevados, solo se puede aplicar a tuplas.
Constructores de tuplas
Son importantes porque proporcionan un medio natural para representar los componentes o propiedades de entidad, solo puede ser aplicado a valores atómicos.
Constructores de átomos
Los átomos son como las constantes y los identificadores de un lenguaje imperativo: incluye los números, las cadenas, los nombre, las funciones y unos cuantos constructores.