Este documento habla sobre los temas de bases de datos orientadas a objetos. Explica conceptos clave como objetos, clases, herencia, propiedades y métodos de objetos. También describe características mandatorias, opcionales y abiertas de las bases de datos orientadas a objetos. Finalmente, resume las características de un sistema de base de datos orientado a objetos.
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
Base de Datos Orientada a Objetos
1. LICENCIATURA EN INFORMATICA TOPICOS DE BASES DE DATOS ING. RICARDO DE JESUS BUSTAMANTE Alumna: Viridiana Figueroa Soria 08230091 5to. semestre
2. Contenido -Que es una BDOO -Caracteristicas de la Bases de Datos -Mandatarias -Opcionales -Abiertas -Definiciones y ejemplos - Objeto - Clase - Herencia -Creación del objeto -propiedades del objeto -Métodos -Constructores básicos -Átomos, Tuplas, conjuntos -Sistema de BDOO -BDMS, Sistema O.O (Características) 2
3. ¿QUE ES UN BDOO? Es una base de datos inteligente. Soporta el paradigma orientado a objetos almacenando datos y métodos, y no sólo datos. Está diseñada para ser eficaz, desde el punto de vista físico, para almacenar objetos complejos. Evita el acceso a los datos; esto es mediante los métodos almacenados en ella. Es más segura ya que no permite tener acceso a los datos (objetos); esto debido a que para poder entrar se tiene que hacer por los métodos que haya utilizado el programador. TOPICOS DE BASES DE DATOS 3
4. Mandatorias: Son aquellas que son obligatorias Opcionales: No son obligatorias y se ponen para que el sistema sea mejor Abiertas: Son aquellas en las que el diseñador pone de su parte y están relacionadas con la programación. TOPICOS DE BASES DE DATOS 4
5. 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 ó Clases, Sobre paso combinado con unión retardada, Extensibilidad, Completación Computacional, Persistencia y Manejador de almacenamiento secundario, Concurrencia, Recuperación y Facilidad de Query. TOPICOS DE BASES DE DATOS 5
6. Opcionales 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 distribución y diseño de transacciones y versiones. TOPICOS DE BASES DE DATOS 6
7. Abiertas 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. TOPICOS DE BASES DE DATOS 7
8. Objeto es cualquier cosa real ó abstracta acerca de la cual almacenamos datos y los métodos que controlan dichos datos TOPICOS DE BASES DE DATOS 8
9. Clase Las clases son declaraciones de objetos, también se podrían definir como abstracciones de objetos. Esto quiere decir que la definición de un objeto es la clase. Cuando programamos un objeto y definimos sus características y funcionalidades en realidad lo que estamos haciendo es programar una clase TOPICOS DE BASES DE DATOS 9
10. Herencia Es cuando Decimos que una clase hereda de otra quiere; decir que esa clase obtiene los mismos métodos y propiedades de la otra clase. TOPICOS DE BASES DE DATOS 10
11. Permitiendo de esta forma añadir a las características heredadas las suyas propias. Ejemplo : Supongamos que tenemos una clase "Persona" con los métodos y propiedades básicas de una objeto persona como podrían ser "caminar" o "hablar", podríamos tener otras clases como “Viri" o “Blanca" que comparten todas las características de una "Persona" pero que añaden características propias TOPICOS DE BASES DE DATOS 11
12. . Por lo que “Viri" y “Blanca" pueden realizar las mismas funciones que puede realizar una "Persona" y además cada una puede realizar las suyas propias, por ejemplo, “Viri" sabe andar a caballo pero “Blanca" no, y “Blanca" sabe bailar salsa pero “Viri" no. TOPICOS DE BASES DE DATOS 12
13. En términos de programación estaríamos diciendo que “Viri" y “Blanca" son dos clases especializadas que heredan o extienden de la superclase "Persona". TOPICOS DE BASES DE DATOS 13
14. Creación del Objeto Entonces, iniciemos la creación del objeto: Para este ejemplo usemos los tradicionales animales. La creación de un objeto se hace con una funcion, que será la constructora, y a la vez la que identifique el objeto. Creemos una "clase" Gato para empezar Hay dos formas de definir la función constructora: Definir una función o definir una variable cuyo contenido sea una función. Puede parecer redundante, lo es. Veamos ambas formas: function Gato( parametros ) { // Codigo }; o var Gato = function (parametros) { /* Codigo*/ } TOPICOS DE BASES DE DATOS 14
15. Propiedades del objeto Como vimos anteriormente, las propiedades del objeto se definen en forma de variables. Estas variables deben estar situadas dentro de la función constructora, marcadas con "this", para poder ser accesadas como parte del objeto. Las variables reciben parametros que se envian al crear una nueva instancia del objeto (para nuestros propositos, al crear un nuevo gato). Entonces veamos el ejemplo con nuestro objeto Gato. Un gato tiene como propiedades básicas... digamos que su nombre, su color, y su edad. Entonces estas propiedades serán las que reciba la función constructora para ser asignadas, Veamos como: var Gato = function (nombre, color, edad) { this.nombre = nombre; this.color = color; this.edad = edad; TOPICOS DE BASES DE DATOS 15
16. Usar nuestro objeto Ahora crearemos un gato nuevo, y a asignarle las propiedades que ya vimos arriba: var kitty= new Gato(“kitty", “rosa", 2); TOPICOS DE BASES DE DATOS 16
17. Métodos Un método es una función dentro del objeto. Hay varios métodos para crear un método nuevo: Extendiendo el prototipo, creando una variable tipo función, o vinculando una función externa al objeto. TOPICOS DE BASES DE DATOS 17
18. CONSTRUCTORES BASICOS ATOMOS: parte de un sistema encontrar pasos intermedios. Si esta operación consiste en una serie de pasos, todos ellos ocurren o ninguno. Por ejemplo en el caso de una transacción bancaria o se ejecuta tanto el deposito y la deducción o ninguna acción es realizada. Es una característica de los sistemas transaccionales. El concepto también es relevante cuando se programa con hilos de ejecución. TOPICOS DE BASES DE DATOS 18
19. Tuplas Las principales propiedades que distinguen a una tupla de, por ejemplo un conjunto, es que: Un objeto puede contener internamente (por agregación) a otros objetos. Los objetos aparecen obligatoriamente representados en un orden dado. TOPICOS DE BASES DE DATOS 19
20. Conjuntos un conjunto es una colección (contenedor) de ciertos valores, sin ningún orden concreto ni valores repetidos. Su correspondencia en las matemáticas sería el conjunto finito. Sin tener en cuenta la secuencia, ni el hecho de que no haya valores repetidos, se asemeja a una lista. Un conjunto puede verse como una cadena asociativa (array) (mapeado parcial) donde no se atiende al valor de cada par clave-valor. TOPICOS DE BASES DE DATOS 20
21. Un sistema de BDOOdebe satisfacer 2 criterios *Tener una DBMS *Ser un sistema O.O TOPICOS DE BASES DE DATOS 21
22. 5 CARACTERSITICAS DE UN DBMS *CONSERVACION DE DATOS *MULTIPLES USUARIOS *MANTENER EL EDO. DE LA BD *USO DE BITACORAS PARA QUE NO SE PIERDAN LOS DATOS *FACILIDAD DE CONSULTAS TOPICOS DE BASES DE DATOS 22
23. 8 CARACTERISTICAS DE UN SISTEMA O.O *DENOTA CARACTERISTICAS ESPECIALES *OCULTA SECRETOS DEL OBJETO *ABSTRACCION Y CIERTA RELACION MINIMIZAN DEPENDENCIAS/MODULOS *ORDENACION DE ABSTRACCION *SIRVE DE MODELO PARA OTRAS CLASES *MULTIPLES USUARIOS *CONSERVACION DE DATOS TOPICOS DE BASES DE DATOS 23
24. CONCLUSIONES Las BDOO Permiten el desarrollo y mantenimiento de aplicaciones complejas con un costo menor. Y permiten que el mismo modelo conceptual se aplique al análisis, diseño, programación, definición y acceso a la BD. Las BDOO ofrecen un mucho mejor rendimiento de la máquina que las bases de datos por relación, para aplicaciones o clases con estructuras complejas de datos. TOPICOS DE BASES DE DATOS 24