Академический Документы
Профессиональный Документы
Культура Документы
Leccin # 9
26 de abril de 2013
26 de abril de 2013
26 de abril de 2013
26 de abril de 2013
26 de abril de 2013
Nuevos Modelos
Estas nuevas aplicaciones requieren nuevos modelos de datos, nuevos lenguajes de consulta y nuevos modelos de transacciones. Entre los requisitos encontramos: Objetos complejos: Un objeto complejo es un dato que es visto como un simple objeto en el mundo real, pero que contiene otros objetos. El modelo de objetos orientada a objetos, las cuales estn basadas en los conceptos de lenguajes de programacin orientados a objetos y las bases de datos relacionales anidadas, en las que las relaciones pueden almacenarse dentro de otras relaciones.
Datos de comportamiento: Puede que diferentes objetos necesiten responder de diferentes formas a la misma orden. Por ejemplo, la eliminacin de ciertas tuplas puede requerir la eliminacin de otras tuplas, como en el caso de entidades dbiles.
26 de abril de 2013
Nuevos Modelos...
Meta conocimiento: A menudo los datos ms importantes sobre aplicaciones son reglas generales acerca de la aplicacin ms que de las tuplas especficas. Las reglas forman una parte importante de los sistemas expertos de bases de datos. Transacciones de larga duracin: Las aplicaciones CAD y CASE implican interaccin humana con los datos. Debido a que las transacciones implican interaccin humana con el sistema, las consecuencias de abortos de transacciones, esperas por bloqueo, etc., son mucho ms serias que en las transacciones no interactivas cortas.
26 de abril de 2013
Estructura de Objetos
El modelo orientado a objetos se basa en encapsular cdigo 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 mtodo, que es un trozo de cdigo para implementar cada mensaje. Un mtodo devuelve un valor como respuesta al mensaje.
26 de abril de 2013
Jerarqua de Clases
Los objetos similares, o sea que responden a los mismos mensajes y utilizan los mismos mtodos, se agrupan en clases. A cada uno de estos objetos se le
26 de abril de 2013
Jerarqua de Clases...
Ejemplo:
Persona: nmero-seguridad-social, nombre, direccin, nmero-telfono-particular, fecha-de-nacimiento. Cliente: tasa-crdito, estado-retencin-impuestos, nmero-telfono-trabajo. Empleado: fecha-de-contrato, salario, nmero-de-dependientes. Cajero: horas-por-semana, nmero-estacin. Secretara: horas-por-semana, supervisor.
26 de abril de 2013
Jerarqua de Clases...
Ejemplo:
Superclase
Persona Subclase Empleado Cliente
Director
Cajero
Secretara
26 de abril de 2013
Jerarqua de Clases...
El objeto que representa a un director contiene las variables de las clases
26 de abril de 2013
Herencia Mltiple
Tomando el ejemplo anterior, supngase que queremos distinguir entre cajeros y secretarias a tiempo completo y a tiempo partido. Creamos las subclases Cajero-tiempo-partido, Cajero-tiempo-completo, Secretara-tiempo-partido, Secretara-tiempo-completo.
26 de abril de 2013
Herencia Mltiple
Jerarqua resultante Persona
Empleado
Cliente
Director
Cajero
Secretara
26 de abril de 2013
Herencia Mltiple...
El modelo no proporciona un buen modelo de la empresa bancaria por varias razones:
Las variables y los mtodos para los empleados a tiempo completo y partido estan definidas dos veces. Este tipo de redundancia no es deseable, ya que cada cambio de propiedades debe hacerse en dos sitios, lo que puede conducir a inconsistencias.
La jerarqua no tiene forma de representar a empleados que no sean cajeros ni secretarias.
El concepto de herencia mltiple trata este tipo de problemas. La herencia mltiple se refiere a la capacidad de las clases para heredar variables y
26 de abril de 2013
Herencia Mltiple...
La Jerarqua quedara as... Empleado Tiempo Completo Tiempo Partido Persona Cliente
Cajero Secretara
Director
26 de abril de 2013
Herencia Mltiple...
Cuando se emplea la herencia mltiple es posible que se d ambigedad en el caso en que pueda heredarse la misma variable o mtodo de ms de una superclase. Esto sera, por ejemplo, las clases Tiempo-completo, Tiempo-partido y Secretara tengan una variable llamada pago. Para solucionar este problema estaran las siguientes opciones: Incluir las variables y renombrarlas, por ejemplo a Tiempo-partido.pago, Secretara.pago. Elegir una u otra basndose en el orden en el que se crearon las clases. Obligar al usuario a que haga la eleccin en el momento en que se define la clase.
26 de abril de 2013
Identidad de Objetos
Los objetos en una base de datos orientada a objetos corresponden a una entidad. Una entidad conserva su identidad aun cuando algunas de sus propiedades cambien con el tiempo. Igualmente, un objeto conserva su identidad aun cuando algunos de sus valores de las variables o las definiciones de los mtodos cambien. La identidad de objeto es una nocin ms fuerte que la que se encuentra normalmente en los lenguajes de programacin. A continuacin varias formas de identidad.
26 de abril de 2013
Identidad de Objetos...
Formas de Identidad:
Valor: Se utiliza un valor de dato por identidad. Esta es la forma de identidad que se usa en los sistemas relacionales.
Nombre: Se utiliza un nombre por identidad. Esta es la forma de identidad que se usa para las variables en los procedimientos. A cada variable se le da un nombre nico.
Incorporacin: Una nocin de identidad es incorporar en el modelo de datos el lenguaje de programacin, y no se requiere que el usuario proporcione el identificador. Esta es la forma de identidad que se usa en los sistemas orientados a objetos.
26 de abril de 2013
Permanencia
Un tema ligado a la identidad es la permanencia. A continuacin varios grados de permanencia de identidad.
Grados de Permanencia:
Intraprograma: La identidad permanece solamente durante la ejecucin de un nico programa o consulta. Interprograma: La identidad permanece de una ejecucin del programa a otra. Persistente: La identidad permanece no slo entre las ejecuciones del programa sino tambin entre las reorganizaciones estructurales de los datos.
26 de abril de 2013
Punteros
Los punteros de la memoria principal o de la memoria virtual ofrecen identidad de intraprograma. Los punteros a datos de un sistema de archivos en disco ofrecen identidad de interprograma. La identidad de objetos, la persistente, es una nocin ms fuerte que la que proporcionan los punteros.
26 de abril de 2013
Contenido de Objetos
Una jerarqua de contenido entre objetos sera as. Un objeto O2 es hijo de un objeto O1 si O1 contiene a O2. Los objetos que contienen objetos se
Ejemplo:
Se tiene la base de datos simplificada de diseo de sistemas de computadores. Esta contiene una clase llama Sistema de computadores la cual incluye las variables tarjeta, bus, dispositivo y conjunto-inst.
Bus
Dispositivo
Conjunto-inst.
Organizacin Fsica
Para construir una estructura fsica fcil de mantener, comnmente los
26 de abril de 2013
Organizacin Fsica...
Los tipos de datos altamente especializados que son grandes fsicamente y
26 de abril de 2013
26 de abril de 2013
Modificacin de Esquemas
Los tipos de modificacin que pueden hacerse en un esquema de base de
Cambios frecuentes: Las aplicaciones que motivan el uso del modelo orientado a objetos requieren cambios de esquema frecuentes.
26 de abril de 2013
Tipos de Modificaciones
Adicin de una nueva clase: La nueva clase debe colocaarse en la jerarqua de clase/subclase y deben resolverse los problemas de herencia. Si la nueva clase no es un nodo hoja en la jerarqua, puede que las subclases de la nueva clase necesita heredar variables o mtodos de la nueva clase.
Eliminacin de una clase: Las variables o mtodos que heredan las subclases se debe volver a examinar. Cualquier cambio en una subclase puede que necesite propagarse a las subclases. Las instancias de las clases eliminadas deben hacerse instancias de otra clase, generalmente un padre de la clase eliminada.
Modificacin de una definicin de clase: Puede definirse una nueva/variable o mtodo o puede eliminarse una definicin de una variable o un mtodo. Resposicin de clases en la jerarqua: Toda reestructuracin de la jerarqua de clases tiene consecuencias en la herencia de las antiguas y nuevas subclases de la clase reposicionada.
26 de abril de 2013
26 de abril de 2013
26 de abril de 2013