SISTEMAS DE BASES DE DATOS BASADOS EN OBJETOS

Tamaño: px
Comenzar la demostración a partir de la página:

Download "SISTEMAS DE BASES DE DATOS BASADOS EN OBJETOS"

Transcripción

1 Sistemas de Información (Tercer Curso) Enxeñeria Técnica en Informática de Sistemas Escola Técnica Superior de Enxeñería Universidade de Santiago de Compostela SISTEMAS DE BASES DE DATOS BASADOS EN OBJETOS José Ramón Ríos Viqueira SISTEMAS DE BASES DE DATOS BASADOS EN OBJETOS Persistencia LENGUAJE DE PROGRAMACIÓN ORIENTADOS A OBJETOS BASES DE DATOS ORIENTADAS A OBJETOS Orientación a Objetos BASES DE DATOS RELACIONALES BASES DE DATOS OBJETO-RELACIONALES 2

2 Sistemas de Información (Tercer Curso) Enxeñeria Técnica en Informática de Sistemas Escola Técnica Superior de Enxeñería Universidade de Santiago de Compostela SISTEMAS DE BASES DE DATOS ORIENTADOS A OBJETOS José Ramón Ríos Viqueira Índice MOTIVACIÓN ORIENTACIÓN A OBJETOS: CONCEPTOS DISCUSIÓN 4

3 MOTIVACIÓN Aplicaciones tradicionales de las BD Aplicaciones de gestión convencionales Nominas, contabilidad, etc. Uso de registros de longitud fija y reducida Campos de cada registro cortos, de longitud fija y tipo alfanumérico Tipos sin estructura Se cumple la primera forma normal Nuevas aplicaciones de las BD Mejoras en el hardware Integración de nuevos tipos de información en la BD Ejemplos Diseño asistido por ordenador (CAD) Sistemas de Información Geográfica (GIS) Sistemas de información Multimedia (MM) Ingeniería del software asistida por ordenador (CASE) Almacenamiento y recuperación de documentos 5 MOTIVACIÓN Ejemplo (Gestión de rectángulos) rectangulos id 1 2 x1 1 3 y1 1 2 x2 5 7 y SELECT id FROM rectangulos WHERE (x1>=0 and x1<=2 and y1<=0 and y1<=2) OR (x2>=0 and x2<=2 and y2<=0 and y2<=2) OR (x1>=0 and x1<=2 and y2<=0 and y2<=2) OR (x2>=0 and x2<=2 and y1<=0 and y1<=2) OR (x1<=0 and x2>=2 and y1<=0 and y2>=2) OR (x1<=0 and x2>=2 and y1>=0 and y1<=2) OR (x1>=0 and x1<=2 and y1<=0 and y2>=2) OR (x2>=0 and x2<=2 and y1<=0 and y2>=2) OR (x1<=0 and x2>=2 and y2>=0 and y2<=2) SELECT id FROM rectangulos WHERE x1<=2 and y1<=2 and x2>=0 and y2>=0 + eficiente 6

4 MOTIVACIÓN Ejemplo (Gestión de rectángulos) Podrá el optimizador generar la segunda consulta a partir de la primera? Con la tecnología actual, NO! Además, los árboles B, no son los más eficientes para este tipo de problema Problemas Necesidades de información simples se traducen en expresiones SQL demasiado complejas La eficiencia en la ejecución de esas consultas es muy baja Solución Incorporar en el SGBD características presentes en lenguajes O.O. Diferencia entre lenguajes de programación y gestores de BD Las aplicaciones se escriben para solucionar un problema específico Una base de datos se diseña para resolver un conjunto de problemas, alguno de los cuales ni se conoce en el momento del diseño. 7 Índice MOTIVACIÓN ORIENTACIÓN A OBJETOS: CONCEPTOS DISCUSIÓN 8

5 ORIENTACIÓN A OBJETOS: CONCEPTOS Objeto Que es un objeto? Un objeto es cualquier cosa!! Entidad del modelo Entidad / Relación Objetos mutables e inmutables Inmutables (incorporados): reales, enteros, etc. Mutables (definidos por usuario): empleados, departamentos, etc. Estructura de los objetos Conjunto de atributos: De tipo: Inmutable, referencia a mutable; listas, arrays, colecciones, etc. de cualquiera de ellos Conjunto de operaciones y métodos Encapsulamiento Estructura interna no es visible. Acceso a atributos a través de las operaciones públicas Implica independencia física de datos Sistemas reales: Propiedades privadas, públicas y protegidas 9 ORIENTACIÓN A OBJETOS: CONCEPTOS Identidad En el modelo relacional: Identidad definida por el usuario (clave) Modelo O.O.: Cada objeto mutable tiene un identificador (OID). El OID se puede usar como un puntero al objeto. El usuario no tiene que preocuparse de generar los ids. Clases de objetos Agrupan objetos con la misma estructura Cada objeto es una instancia de una clase Diferencia entre clase y tipo de datos. Una clase incluye: Variable de tipo conjunto con todas sus instancias Un método constructor para crear instancias nuevas. 10

6 ORIENTACIÓN A OBJETOS: CONCEPTOS Herencia Jerarquías de especialización/generalización Superclases y subclases Atributos y operaciones comunes localizados en la superclase. Subclases heredan estas propiedades comunes Herencia estructural y de comportamiento Se consigue reutilización de código y polimorfismo. Herencia múltiple Grafos Acíclicos Dirigidos (GAD) en lugar de árboles Problema: Heredar la misma propiedad de varias superclases. Colecciones de objetos Se utilizan referencias a los objetos (OIDs) para incluirlos en colecciones. Permiten la creación de Jerarquías y GADs de agregados Esto permite examinar los datos desde diferentes niveles de detalle 11 ORIENTACIÓN A OBJETOS: CONCEPTOS Lenguajes Orientados a Objetos Incorporación de conceptos de O.O. en bases de datos Incorporación sólo en las herramientas de análisis y diseño Uso de un lenguaje O.O. para modelar E/R extendido UML Transformación de los conceptos de O.O. al modelo relacional Incorporación en el lenguaje de la base de datos Extensión del lenguaje de un SGBD Bases de datos Objeto-relacionales Lenguajes de programación O.O. extendidos para trabajar con bases de datos Lenguajes de programación O.O. persistentes 12

7 Índice MOTIVACIÓN ORIENTACIÓN A OBJETOS: CONCEPTOS Lenguajes de programación persistentes Sistemas C++ persistentes DISCUSIÓN 13 Lenguajes de programación persistentes Introducción Los objetos en un lenguaje de programación no persisten tras la ejecución de una aplicación 1. Datos persistentes en lenguajes de programación almacenados en archivos 2. Almacenar datos persistentes en un SGBD Incorporar SQL en el lenguaje de programación SQL embebido y librerías de acceso a datos 3. Lenguajes de programación persistentes Incorporar constructores en un lenguaje O.O. convencional para dotarlo de la posibilidad de hacer persistentes sus objetos ODMG (Object Data Management Group) 14

8 Lenguajes de programación persistentes Diferencia entre lenguajes con SQL incorporado y lenguajes de programación persistentes Con SQL: Diferentes tipos de dato entre el lenguaje anfitrión y el SQL. Transformación es responsabilidad del programador. Aparecen errores no detectados y se necesita mucho código Persistentes: Persistencia de objetos totalmente integrada en el lenguaje. Los cambios de formato son transparentes al programador. Programador no necesita conocer SQL ni preocuparse de la transformación de objetos a relaciones Con SQL: El programador recibe los datos del SGBD y es su responsabilidad gestionarlos en memoria. Debe de preocuparse de mantener la coherencia entre la copia en memoria y la copia en la BD Persistentes: El programador no necesita escribir código para buscar datos en memoria ni para guardarlos en disco. 15 Lenguajes de programación persistentes Enfoques para conseguir persistencia de objetos Por clases: Nueva sintaxis que permita declarar que una clase es persistente. Todos los objetos de esa clase serán creados como persistentes. Poco flexible. A veces interesa que algunos objetos de una clase sean persistentes y otros no Por creación: Se extiende la sintaxis de creación de objetos para permitir la creación de objetos persistente Por marcas: Todos los objetos se crean igual. Los objetos persistentes se marcan como tales después de su creación Por referencia: Uno o varios objetos se declaran como persistentes de forma explicita (por alguno de los procedimientos anteriores). Los objetos a los que se haga referencia desde uno de los objetos anteriores, serán persistentes también. Ventaja: Forma sencilla de declarar como persistente una estructura compleja. 16

9 Lenguajes de programación persistentes Necesidad de identificadores persistentes Para conseguir la persistencia de objetos, se necesita un método de generación de identificadores (OIDs) persistentes En muchos lenguajes de programación, el OID es un puntero a la ubicación en memoria del objeto (C++) En lenguajes O.O. con persistencia se necesitan identificadores que persistan entre ejecuciones de programas y también a reorganizaciones estructurales de datos. OIDs implementados como punteros persistentes a los objetos. Estos punteros permanecen inalterados después de la ejecución de los programas y después de ciertas reorganizaciones de los datos Se utilizan de igual forma que los punteros internos de la memoria 17 Lenguajes de programación persistentes Almacenamiento y acceso a objetos persistentes Guardar por separado los valores de los atributos de cada objeto El código de cada método puede guardarse como parte del esquema de la clase En algunos sistemas este código se almacena por separado Evitar el tener que integrar un compilador Formas de acceder a los objetos Dar un nombre distinto a cada objeto (eficaz sólo si hay pocos objetos) Exponer los OIDs de los objetos Guardar las colecciones de objetos y permitir que los programas iteren sobres ellas para buscar los objetos deseados Una colección es un objeto (conjuntos, bolsas, listas, arrays, etc.) Una clase e un caso especial de colección Combinación de las tres formas de acceso (mayoría de sistemas) Dar nombres a clases, otras colecciones y objetos especiales Usar OIDs para acceder al resto de los objetos 18

10 Índice MOTIVACIÓN ORIENTACIÓN A OBJETOS: CONCEPTOS Lenguajes de programación persistentes Sistemas C++ persistentes DISCUSIÓN 19 Sistemas C++ Persistentes Características generales Cambios mínimos en la sintaxis de C++ Facilita el uso del sistema Facilita la implementación Ejemplo Definición de una clase "Persistent_Object" Clases persistentes han de ser subclases de "Persisten_Object" Se redefinen algunos operadores para adaptarlos a la persistencia de objetos (Sobrecarga) Ejemplos: "", New, etc. Ejemplos de BDOO basadas en C++ persistente O2, OBJECTSTORE, VERSANT, OBJECTIVITY Estándar ODMG ODL (Object Definition Language) OML (Object Manipulation Language) OQL (Object Query Language) 20

11 ODL Sistemas C++ Persistentes Sucursal * Cuenta Persona Cliente class Persona : public Persistent_Object { public: String nombre; String direccion; ; class Cliente : public Persona { public: int edad; int id_cliente; Set<Ref<Cuenta>> cuentas inverse Cuenta::titulares; ; * * class Sucursal : public Persistent_Object { public: String nombre; String direccion; Set<Ref<Cuenta>> cuentas inverse Cuenta::sucursal; ; class Cuenta : public Persistent_Object { private: int saldo; public: int numero; Set<Ref<Cliente>> titulares inverse Cliente::cuentas; Ref<Sucursal> sucursal inverse Sucursal::cuentas; int calcular_saldo(); int actualizar_saldo(int delta); ; 21 ODL Sistemas C++ Persistentes Clases persistentes: Todas las clases cuyos objetos pueden ser persistentes aparecen en la jerarquía como descendientes de "Persistent_Object" Punteros persistentes: Los tipos de dato puntero a objetos de una determinada clase "*nombre_clase" se sustituyen por un tipo plantilla "Ref<nombre_clase>" de punteros persistentes. Tipos plantilla: Toman como parámetros otros tipos de dato. Colecciones persistentes: Los tipos de dato conjunto, multiconjunto, listas, arrays, etc. se sustituyen por sus respectivos tipos persistentes. Por ejemplo: Set<nombre_clase>. Se usan tipos plantilla para definirlos. Integridad referencial: Palabra clave "inverse". Resumen: Clases Persisten_Object, Ref, Set, etc. definidas en una biblioteca de persistencia. Extensión mínima del lenguaje: palabra clave inverse 22

12 OML Sistemas C++ Persistentes Inserción de objetos int nueva_cuenta(string nombre, string direccion, int edad){ Database *bd; Transaction trans; Ref<Cuenta> cuenta; Ref<Cliente> cliente; bd = Database::open("banco"); trans.begin(); cuenta = New(bd) Cuenta; cliente = New(bd) Cliente; cliente->nombre = nombre; cliente->direccion = direccion; cliente->edad = edad; cuenta->titulares.insert_element(cliente);... trans.commit(); 23 Sistemas C++ Persistentes OML Inserción de objetos Nuevas clases: Database, Transaction, Session, Conection, etc. Creación de nuevos objetos: Operador "New(bd) nombre_clase" crea un objeto persistente nuevo del tipo indicado y lo almacena en la base de datos a la que se refiere la variable bd. Punteros persistentes: Operador -> redefinido para punteros persistentes. Colecciones persistentes: nombre_coleccion.insert_element(obj), inserta un objeto en una colección persistente 24

13 OML Acceso a los objetos Sistemas C++ Persistentes Uso de variables estáticas en las clases class Cliente : public Persona {... static Set<Ref<<Cliente>> todos_los_clientes... Cliente::todos_los_clientes.insert_element(cliente); int visualizar_clientes_por_edad(int edad){ Database *bd; Transaction trans; Iterator<Ref<Cliente>> iter; Ref<Cliente> p; bd = Database::open("banco"); trans.begin(); iter = Cliente::todos_los_clientes.create_iterator(); While (iter.next(p)){ if (p->edad < edad) visualizar_cliente(p); En la declaración de la clase ODL Siempre que se cree un cliente nuevo Puede incluirse en el constructor Se usan iteradores 25 OML Acceso a los objetos Sistemas C++ Persistentes Uso de nombres de colecciones y de objetos int nueva_sucursal(string nombre, string direccion){ Database *bd; Transaction trans; Ref<Sucursal> sucursal; bd = Database::open("banco"); trans.begin(); sucursal = New(bd) Sucursal; sucursal->nombre = nombre; sucursal->direccion = direccion; bd->set_object_name(sucursal, nombre);... trans.commit(); Asigna un nombre en la base de datos a la sucursal creada 26

14 OML Acceso a los objetos Sistemas C++ Persistentes Uso de nombres de colecciones y de objetos nueva_sucursal("nueva1", "Calle nueva 3, bancopoli"); Ejemplo: visualiza los clientes con edad < 35 de las cuentas de la sucursal nueva1 Database *bd; Transaction trans; Ref<Sucursal> nueva1; Iterator<Ref<Cliente>> itercli; Iterator<Ref<Cuenta>> itercuen; Ref<Cliente> pcli; Ref<Cuenta> pcuen; bd = Database::open("banco"); trans.begin(); nueva1 = bd->look_up_object("nueva1"); itercuen = nueva1.cuentas.create_iterator(); While (itercuen.next(pcuen)){ itercli = pcuen->titulares.create_iterator(); While (itercli.next(pcli)){ if (pcli->edad < 35) visualizar_cliente(pcli); Obtiene la sucursal a partir de su nombre 27 OQL Sistemas C++ Persistentes Lenguaje declarativo (parecido a SQL) El resultado no tiene porque ser un conjunto de objetos Da soporte a la independencia física de datos Internamente se pueden declarar índices de acceso Permite la incorporación de optimización de consultas 28

15 Índice MOTIVACIÓN ORIENTACIÓN A OBJETOS: CONCEPTOS Lenguajes de programación persistentes Sistemas C++ persistentes DISCUSIÓN 29 JDO Define interfaces y clases que permiten a los programadores almacenar las instancias de los objetos de aplicación en memoria persistente. Objetivos Proporcionar una visión Java de la información persistente de las aplicaciones Permitir la conexión de distintas implementaciones de almacenes de persistencia sin afectar al código de la aplicación Aplicación Interfaces JDO Implementación JDO Implementación JDO SGBD Archivos Implementación de referencia: 30

16 Definición de clases Código Java normal public class Direccion{ private String calle; private int numero; private String localidad; public Direccion (String calle, int numero, String localidad) { this.calle = calle; this.numero = numero; this.localidad = localidad public tostring(){ return calle+", "+numero+", "+localidad; Clases persistentes declaradas como "Persistence Capable" en la implementación JDO Persona public class Persona { private String nombre; private String apellidos; private int edad; private Direccion dir; Direccion public Persona(String nombre, String apellidos, int edad){ this.nombre = nombre; this.apellidos = apellidos; this.edad = edad; public setdir(direccion dir){ this.dir = dir; public getdir(){return dir public tostring(){ return nombre+" "+apellidos+" ("+edad+")"; 31 Almacenar objetos en memoria persistente Depende de la Properties props = new Properties(); implementación... // Establecer las propiedades para obtener la factoría de gestores de persistencia PersistenceManagerFactory pmf = JDOHelper.getPersistenceManagerFactory(properties); PersistenceManager pm = pmf.getpersistencemanager(); try { pm.currenttransaction.begin(); Persona p = new Persona("Julio", "Hernandez", 23); Direccion d = new Direccion("Torre blanca", 32, "Estopolis"); persona.setdir(d); pm.makepersistent(p); pm.currenttransaction.commint(); Object oid = pm.getobjectid(persona); String textoid = oid.tostring(); finally{ if (pm.currenttransaction().isactive()) pm.currenttransaction().rollback(); if (!pm.isclosed()) pm.close(); La Dirección se hace persistente por referencia Identificador persistente del objeto Identificador persistente del objeto en formato texto 32

17 Acceso a los objetos persistentes Acceso a través del OID persistente del objeto Properties props = new Properties();... // Establecer las propiedades para obtener la factoría de gestores de persistencia PersistenceManagerFactory pmf = JDOHelper.getPersistenceManagerFactory(properties); PersistenceManager pm = pmf.getpersistencemanager(); Object oid = pm.newobjectidinstance(persona.class, textoid); Persona p = (Persona) pm.getobjectbyid(oid, true); System.out.println(p.toString()); refrescar la caché pm.close(); El uso de Oids en formato de texto permite pasarlos como parámetro en aplicaciones web. 33 Acceso a los objetos persistentes Acceso a todas las instancias persistentes de una clase Properties props = new Properties();... // Establecer las propiedades para obtener la factoría de gestores de persistencia PersistenceManagerFactory pmf = JDOHelper.getPersistenceManagerFactory(properties); PersistenceManager pm = pmf.getpersistencemanager(); Extent ext = pm.getextent(persona.class, false); java.util.iterator itr = ext.iterator(); try { while (itr.hasnext()) { Persona p = (Persona) itr.next(); System.out.println(p.getDir().toString()); finally { ext.close(itr); pm.close(); recuperar también las subclases 34

18 Acceso a los objetos persistentes Acceso mediante consultas en JDO Query Language (JDOQL) Properties props = new Properties();... // Establecer las propiedades para obtener la factoría de gestores de persistencia PersistenceManagerFactory pmf = JDOHelper.getPersistenceManagerFactory(properties); PersistenceManager pm = pmf.getpersistencemanager(); Extent ext = pm.getextent(persona.class, false); Query consulta = pm.newquery(persona.class, ext, "this.edad >= 18"); consulta.setordering("nombre ascending"); Collection resultado = (Collection) consulta.execute(); try { Iterator itr = resultado.iterator(); while (itr.hasnext()) System.out.println(itr.next().toString()); finally { consulta.close(resultado); pm.close(); 35 Modificación de objetos persistentes try{ pm.currenttransaction().begin(); Persona p = (Persona) pm.getobjectbyid(oid, true); Direccion d = New Direccion("Rue de la paz", 34, "lotocopolis"); p.setdir(d); pm.currenttransaction().commit(); finally{ if (pm.currenttransaction().isactive()) pm.currenttransaction().rollback(); if (!pm.isclosed()) pm.close(); 36

19 Borrado de objetos persistentes try{ pm.currenttransaction().begin(); Persona p = (Persona) pm.getobjectbyid(oid, true); pm.deletepersistent(p); pm.currenttransaction().commit(); finally{ if (pm.currenttransaction().isactive()) pm.currenttransaction().rollback(); if (!pm.isclosed()) pm.close(); la dirección se borrará en cascada En la implementación debe existir un recolector de basura encargado de liberar el espacio de objetos no referenciados 37 Índice MOTIVACIÓN ORIENTACIÓN A OBJETOS: CONCEPTOS DISCUSIÓN 38

20 DISCUSIÓN Lenguaje de consulta de propósito general Procedimental (C++, Java, etc.) + complejo + coste, + errores Más difícil o imposible incorporar técnicas de optimización Declarativo (OQL, JDOQL) Los atributos deben de ser públicos Se pierde la encapsulación y la independencia física de datos Que pasa si sustituimos un array por una lista? Clases derivadas: Proyección en algunos atributos de una clase Clase resultado? OID? Que métodos se aplican? Join de dos clases OQL: El resultado no siempre es una clase Modelo no es cerrado JDOQL: Lenguaje de consulta limitado (sólo filtros) Vistas: Normalmente no se permiten. Acceso a datos a través de caminos (Paths) Modelo jerárquico? 39 DISCUSIÓN Declaración de restricciones de integridad No se pueden codificar en un lenguaje declarativo Inserción de código de validación en los métodos Problemas El cuando se ejecuta la comprobación lo determina el usuario y no el sistema Se puede estar seguro de que siempre que se acceda al dato, desde cualquier método (codificado o por codificar), se va a efectuar la validación? Si la restricción cambia Cuántos métodos deben modificarse? Hay un catálogo de restricciones? Se ejecutarán durante operaciones atípicas carga masiva de datos etc. 40

21 Relaciones entre objetos DISCUSIÓN Se modelan mediante punteros 1:1, puntero de un objeto a otro (a veces en una sola dirección) 1:N, en un lado puntero, en el otro lado colección de punteros M:N, colecciones de punteros en ambos lados Relaciones ternarias? Vuelta al modelo en red? Integridad referencial Validación de punteros (JDO). Declarar que una referencia es la inversa de otra (OQL) Borrados y modificaciones automáticas En muchos casos se asumen borrados en CASCADA Jerarquías, recolector de basura. No se permite al usuario controlar el comportamiento. 41 DISCUSIÓN Un lenguaje de programación O.O. persistente, es realmente un SGBD? Un SGBD relacional se proporciona listo para ser usado Sistema gestor de datos de propósito general Un SGBD Orientado a Objetos puede verse como un conjunto de herramientas que permiten a un programador definir un almacén de datos para una aplicación en concreto Definir clases con métodos (código) adaptado a una aplicación concreta Se da poca importancia a: Compartir datos entre aplicaciones Independencia física de datos Lenguajes de consulta declarativos y de propósito general Vistas e independencia lógica de datos etc. 42

BASE DE DATOS: ENFOQUE ORIENTADO A OBJETOS. Dámaso López Aragón

BASE DE DATOS: ENFOQUE ORIENTADO A OBJETOS. Dámaso López Aragón BASE DE DATOS: ENFOQUE ORIENTADO A OBJETOS Dámaso López Aragón Introducción En la actualidad, la orientación a objetos es una nueva forma de comprender los problemas y modelar el negocio de una empresa,

Más detalles

Curso de Java POO: Programación orientada a objetos

Curso de Java POO: Programación orientada a objetos Curso de Java POO: Programación orientada a objetos Luis Guerra Velasco Curso INEM 02830. Programación en Java Marzo 2010 Índice 1 Introducción a la POO 2 Herencia y polimorfismo 3 Empaquetado de proyectos

Más detalles

Programación Orientada a Objetos con Java

Programación Orientada a Objetos con Java Programación Orientada a Objetos con Java M.C. Jorge Eduardo Ibarra Esquer jorgeeie@uabc.mx Sobrecarga de métodos Java permite la definición de dos o más métodos que tengan el mismo nombre, dentro de la

Más detalles

Java Inicial (20 horas)

Java Inicial (20 horas) Java Inicial (20 horas) 1 Temario 1. Programación Orientada a Objetos 2. Introducción y Sintaxis Java 3. Sentencias Control Flujo 4. POO en Java 5. Relaciones entre Objetos 6. Polimorfismo, abstracción

Más detalles

PROGRAMACIÓ DIDÁCTICA: Secuanciación, Temporalización y Unidades Didácticas

PROGRAMACIÓ DIDÁCTICA: Secuanciación, Temporalización y Unidades Didácticas Departamento de Informática PROGRAMACIÓN DIDÁCTICA Curso 11-12 1 CONSEJERÍA DE EDUCACIÓN I.E.S. NERVIÓN Departamento de Informática CICLO FORMATIVO: TÉCNICO SUPERIOR EN DESARROLLO DE APLICACIONES MULTIPLATAFORMA.

Más detalles

Introducción a la programación orientada a objetos

Introducción a la programación orientada a objetos Introducción a la programación orientada a objetos 1. Introducción a la programación orientada a objetos 2. Las clases 3. El tipo Struct 4. Diferencias entre Class y Struct 5. Pilares de la Programación

Más detalles

DEPARTAMENTO: Informática. MATERIA: Programación. NIVEL: 1º Desarrollo de Aplicaciones Multiplataforma

DEPARTAMENTO: Informática. MATERIA: Programación. NIVEL: 1º Desarrollo de Aplicaciones Multiplataforma DEPARTAMENTO: Informática MATERIA: Programación NIVEL: 1º Desarrollo de Aplicaciones Multiplataforma 1. Objetivos. Competencias Profesionales, Personales y Sociales 1.1 Objetivos del ciclo formativo La

Más detalles

Capitulo III. Diseño del Sistema.

Capitulo III. Diseño del Sistema. Capitulo III. Diseño del Sistema. Para el desarrollo del sistema en la presente tesis se utilizo el paradigma orientado a objetos utilizando el lenguaje Java en su versión 1.2. Por medio de este lenguaje

Más detalles

Bases de Datos 3º Informática de Sistemas

Bases de Datos 3º Informática de Sistemas TEMA 2.- EL SISTEMA GESTOR DE BASES DE DATOS. Concepto y Funciones del SGBD. Lenguajes de los SGBD. Niveles de Abstracción. Arquitectura ANSI/SPARC. Componentes del SGBD. 1. Concepto y Funciones del SGBD.

Más detalles

Programación Orientada a Objetos en Java

Programación Orientada a Objetos en Java Programación Orientada a Objetos en Java Curso 2006-2007 Tema 4 Herencia y Polimorfismo Gonzalo Méndez Pozo Dpto. de Ingeniería de Software e Inteligencia Artificial Universidad Complutense de Madrid Herencia

Más detalles

Tema 11 Bases de datos. Fundamentos de Informática

Tema 11 Bases de datos. Fundamentos de Informática Tema 11 Bases de datos Fundamentos de Informática Índice Evolución Tipos de modelos de datos y SGBD El modelo relacional y el Diseño de una Base de Datos Operaciones básicas: consulta, inserción y borrado.

Más detalles

Estructura de Bases de datos. Leonardo Víquez Acuña

Estructura de Bases de datos. Leonardo Víquez Acuña Estructura de Bases de datos Leonardo Víquez Acuña Lenguajes de Bases de Datos Un sistema de bases de datos proporciona Un lenguaje de definición de datos para especificar el esquema de la base de datos

Más detalles

Tema 3: Herencia en C++ Programación Orientada a Objetos Curso 2008/2009 Begoña Moros Valle

Tema 3: Herencia en C++ Programación Orientada a Objetos Curso 2008/2009 Begoña Moros Valle Tema 3: Herencia en C++ Programación Orientada a Objetos Curso 2008/2009 Begoña Moros Valle Contenido Tipos de herencia Herencia y niveles de visibilidad Herencia y creación Redefinición de métodos Conversión

Más detalles

2.6.2.- Aplicaciones de las vistas. 2.6.1.- Concepto de vista. 2.6.3.- Vistas en SQL. 2.6.3.- Vistas en SQL.

2.6.2.- Aplicaciones de las vistas. 2.6.1.- Concepto de vista. 2.6.3.- Vistas en SQL. 2.6.3.- Vistas en SQL. 2.6.1.- Concepto de vista. Una vista es una tabla derivada de otras tablas (básicas o virtuales). Una vista se caracteriza porque: Se considera que forma parte del esquema externo. Una vista es una tabla

Más detalles

Curso de Python Inicial

Curso de Python Inicial Logo IAA-CSIC Curso organizado por el Gabinete de Formación del CSIC Curso de Python Inicial Clases Contenidos 1. Paradigmas de la Programación 2. Programación Orientada a objetos 3. Clases 4. Objetos

Más detalles

INTRODUCCION. entidades. Modelo lógico de la base de datos. Matricula. carne. codigo_curso. año semestre nota. propiedades

INTRODUCCION. entidades. Modelo lógico de la base de datos. Matricula. carne. codigo_curso. año semestre nota. propiedades INTRODUCCION Uno de los objetivos del curso es modelar a través de un diagrama las estructuras lógicas requeridas para almacenar los datos y resolver las consultas del sistema información que requiera

Más detalles

Programación en Java. Programación en OO

Programación en Java. Programación en OO Programación en OO Lección 4:Programación en OO 1. Herencia 2. Modificadores de Acceso 3. Interfaces Herencia Es la acción en la que una clase obtiene los métodos y propiedades definidos en otra clase,

Más detalles

PHP y MySQL. Inicio: - Herencia - Palabra clave Final - Polimorfismo - Type Hinting - Abstracción de clases

PHP y MySQL. Inicio: - Herencia - Palabra clave Final - Polimorfismo - Type Hinting - Abstracción de clases PHP y MySQL Inicio: - Herencia - Palabra clave Final - Polimorfismo - Type Hinting - Abstracción de clases Herencia de Objetos La herencia permite crear muchas clases que son similares entre si, sin tener

Más detalles

UNIDAD 2: Abstracción del Mundo real Al Paradigma Orientado a Objetos

UNIDAD 2: Abstracción del Mundo real Al Paradigma Orientado a Objetos 2.1. Principios básicos del Modelado de Objetos UNIDAD 2: Abstracción del Mundo real Al Paradigma Orientado a Objetos Hoy en día muchos de los procesos que intervienen en un negocio o empresa y que resuelven

Más detalles

Tema 1. Conceptos básicos

Tema 1. Conceptos básicos Conceptos básicos Sistema de Gestión de Bases de Datos, SGBD (DBMS, Database Management System): software diseñado específicamente para el mantenimiento y la explotación de grandes conjuntos de datos 1

Más detalles

LENGUAJES DE CONSULTA ORIENTADOS A OBJETOS

LENGUAJES DE CONSULTA ORIENTADOS A OBJETOS LENGUAJES DE CONSULTA ORIENTADOS A OBJETOS Los lenguajes de consulta constituyen una funcionalidad importante de los SGBDOO. El usuario puede recuperar los datos especificando simplemente las condiciones

Más detalles

Tecnología de la Información y la Comunicación. Base de datos. Consultas - 2007 -

Tecnología de la Información y la Comunicación. Base de datos. Consultas - 2007 - Tecnología de la Información y la Comunicación Base de datos Consultas - 2007 - Profesores del área Informática: Guillermo Storti Gladys Ríos Gabriel Campodónico Consultas Se utilizan consultas para ver,

Más detalles

Capítulo 12: Indexación y asociación

Capítulo 12: Indexación y asociación Capítulo 12: Indexación y asociación Conceptos básicos Índices ordenados Archivos de índice de árbol B+ Archivos de índice de árbol B Asociación estática Asociación dinámica Comparación entre indexación

Más detalles

EXAMEN FINAL Metodología y Programación Orientada a Objetos. Curso 2010 2011. Cuatrimestre de otoño. 17 de Enero de 2011

EXAMEN FINAL Metodología y Programación Orientada a Objetos. Curso 2010 2011. Cuatrimestre de otoño. 17 de Enero de 2011 EXAMEN FINAL Metodología y Programación Orientada a Objetos. Curso 2010 2011. Cuatrimestre de otoño. 17 de Enero de 2011 1. (0,75 PUNTOS) Identificad a continuación las sentencias que son ciertas, descartando

Más detalles

BASES DE DATOS OFIMÁTICAS

BASES DE DATOS OFIMÁTICAS BASES DE DATOS OFIMÁTICAS Qué es una Bases de Datos Ofimática?. En el entorno de trabajo de cualquier tipo de oficina ha sido habitual tener un archivo con gran parte de la información necesaria para el

Más detalles

GUIA PROGRAMACIÓN ORIENTADA A OBJETOS

GUIA PROGRAMACIÓN ORIENTADA A OBJETOS GUIA PROGRAMACIÓN ORIENTADA A OBJETOS 1. Por qué la P.O.O? R= A medida que se van desarrollando los lenguajes, se va desarrollando también la posibilidad de resolver problemas más complejos. En la evolución

Más detalles

Programación orientada a objetos

Programación orientada a objetos Repaso Programación orientada a objetos Curso INEM. Programación en Java Santiago Muelas Pascual smuelas@fi.upm.es! Clase! Objeto! Atributo o variable de instancia! Método! Instanciar/crear un objeto!

Más detalles

INTRODUCCIÓN A LOS SISTEMAS GESTORES DE BASE DE DATOS

INTRODUCCIÓN A LOS SISTEMAS GESTORES DE BASE DE DATOS INTRODUCCIÓN A LOS SISTEMAS GESTORES DE BASE DE DATOS AUTORÍA JOSEFA PÉREZ DOMÍNGUEZ TEMÁTICA NUEVAS TECNOLOGIAS ETAPA CICLOS FORMATIVOS DE GRADO SUPERIOR DE INFORMÁTICA Resumen En esta publicación se

Más detalles

Repaso de Conceptos Básicos de Bases de Datos

Repaso de Conceptos Básicos de Bases de Datos escuela técnica superior de ingeniería informática Repaso de Conceptos Básicos de Bases de Datos Departamento de Lenguajes Grupo de Ingeniería del Software Septiembre 2004 Definición Una base de datos

Más detalles

UNIVERSIDAD CATOLICA DE COLOMBIA FACULTAD DE INGENIERIA DE SISTEMAS

UNIVERSIDAD CATOLICA DE COLOMBIA FACULTAD DE INGENIERIA DE SISTEMAS UNIVERSIDAD CATOLICA DE COLOMBIA FACULTAD DE INGENIERIA DE SISTEMAS CURSO: JAVA BASICO PROFESOR: EMERSON CASTAÑEDA SANABRIA TEMA: Programación Orientada a Objetos OBJETIVOS: Familiarizarse con la Programación

Más detalles

BASES DE DATOS TEMA 1

BASES DE DATOS TEMA 1 BASES DE DATOS TEMA 1 Contenido 1. Qué es una base de datos? 2. Un ejemplo 3. Personas que interactúan con la base de datos 4. Inconvenientes de los sistemas de ficheros 5. Modelos de datos 6. Lenguajes

Más detalles

Una base de datos es una colección de información ordenada e interrelacionada que es de importancia para una empresa.

Una base de datos es una colección de información ordenada e interrelacionada que es de importancia para una empresa. BASES DE DATOS Una base de datos es una colección de información ordenada e interrelacionada que es de importancia para una empresa. La creación de una base de datos debe ser realizada cuidadosamente procurando

Más detalles

BASE DE DATOS RELACIONALES

BASE DE DATOS RELACIONALES BASE DE DATOS RELACIONALES Una base de datos relacional es una base de datos que cumple con el modelo relacional, el cual es el modelo más utilizado en la actualidad para implementar bases de datos ya

Más detalles

Patrones para persistencia (I) Ingeniería del Software II

Patrones para persistencia (I) Ingeniería del Software II Patrones para persistencia (I) Ingeniería del Software II 1 Patrones para la construcción del esquema relacional En todos los ejemplos realizaremos transformaciones del siguiente diagrama de clases: Figura

Más detalles

- Bases de Datos - - Diseño Físico - Luis D. García

- Bases de Datos - - Diseño Físico - Luis D. García - Diseño Físico - Luis D. García Abril de 2006 Introducción El diseño de una base de datos está compuesto por tres etapas, el Diseño Conceptual, en el cual se descubren la semántica de los datos, definiendo

Más detalles

2.2.- Paradigmas de la POO

2.2.- Paradigmas de la POO 2.2.- Paradigmas de la POO Los principios propios de la orientación a objetos son: 2.2.1.- Abstracción de Datos 2.2.2.- Encapsulamiento 2.2.3.- Ocultamiento 2.2.4.- Herencia 2.2.5.- Polimorfismo Cualquier

Más detalles

Diseño orientado a los objetos

Diseño orientado a los objetos Diseño orientado a los objetos El Diseño Orientado a los Objetos (DOO) crea una representación del problema del mundo real y la hace corresponder con el ámbito de la solución, que es el software. A diferencia

Más detalles

Programación páginas web. Servidor (PHP)

Programación páginas web. Servidor (PHP) Programación páginas web. Servidor (PHP) Curso de desarrollo de aplicaciones web. Para ello se estudia la programación de la parte servidor con la tecnología PHP y el servidor de bases de datos MySQL.

Más detalles

Generación de código para Hibernate desde modelos UML

Generación de código para Hibernate desde modelos UML Generación de código para Hibernate desde modelos UML Alejandro Nogueiro Mariscal Ingeniería Técnica en Informática de Sistemas, Universidad de Cádiz 24 de Septiembre 2012 1 / 35 Índice 1 Motivación y

Más detalles

Arquitectura de Aplicaciones

Arquitectura de Aplicaciones 1 Capítulo 13: Arquitectura de aplicaciones. - Sommerville Contenidos del capítulo 13.1 Sistemas de procesamiento de datos 13.2 Sistemas de procesamiento de transacciones 13.3 Sistemas de procesamiento

Más detalles

SQL (Structured Query Language)

SQL (Structured Query Language) SQL (Structured Query Language) El lenguaje de consulta estructurado o SQL (por sus siglas en inglés Structured Query Language) es un lenguaje declarativo de acceso a bases de datos relacionales que permite

Más detalles

19. Packages o paquetes

19. Packages o paquetes Programación orientada a objetos con Java 201 19. Packages o paquetes Objetivos: a) Definir el concepto de paquete b) Interpretar el código fuente de una aplicación Java donde se utilicen paquetes c) Construir

Más detalles

Consultas con combinaciones

Consultas con combinaciones UNIDAD 1.- PARTE 2 MANIPULACIÓN AVANZADA DE DATOS CON SQL. BASES DE DATOS PARA APLICACIONES Xochitl Clemente Parra Armando Méndez Morales Consultas con combinaciones Usando combinaciones (joins), se pueden

Más detalles

TEMA 8: DIAGRAMA DE CLASE EN UML

TEMA 8: DIAGRAMA DE CLASE EN UML TEMA 8: DIAGRAMA DE CLASE EN UML Diagramas en UML El bloque de construcción básico de UML es un Diagrama Introducción a UML 2 1 Diagrama de Clase Los diagramas de clases son los más utilizados en el modelado

Más detalles

RESUMEN DE CONCEPTOS BASICOS DE PROGRAMACION JAVA

RESUMEN DE CONCEPTOS BASICOS DE PROGRAMACION JAVA UNED Centro Asociado de Cádiz RESUMEN DE CONCEPTOS BASICOS DE PROGRAMACION JAVA 1. OBJETOS Cualquier elemento del programa es un objeto. Un programa es un conjunto de objetos que se comunican entre sí

Más detalles

GESTIÓN DE REDES PARTE III

GESTIÓN DE REDES PARTE III PARTE III Arquitectura de Gestión OSI 3.1 Introducción La gestión de red OSI, pensada inicialmente para la gestión de las propias redes OSI, debe su implantación práctica al ser adoptada por los estándares

Más detalles

Componentes de Integración entre Plataformas Información Detallada

Componentes de Integración entre Plataformas Información Detallada Componentes de Integración entre Plataformas Información Detallada Active Directory Integration Integración con el Directorio Activo Active Directory es el servicio de directorio para Windows 2000 Server.

Más detalles

Microsoft SQL Server 2005

Microsoft SQL Server 2005 Microsoft SQL Server 2005 Módulo 1: Diseño y programación Estudia el servidor de bases de datos SQL Server 2005 desde el punto de vista de un diseñador y programador de bases de datos, prestando atención

Más detalles

Base de datos relacional

Base de datos relacional Base de datos relacional Una base de datos relacional es una base de datos que cumple con el modelo relacional, el cual es el modelo más utilizado en la actualidad para modelar problemas reales y administrar

Más detalles

GENERALIDADES DE BASES DE DATOS

GENERALIDADES DE BASES DE DATOS GENERALIDADES DE BASES DE DATOS A fin de evitar que idénticos datos se encuentren repetidos en múltiples archivos, parece necesario que los comunes se almacenen en un archivo único y que este archivo sea

Más detalles

Capítulo 1: Introducción a los Sistemas de Gestión de Bases de Datos (SGBD)

Capítulo 1: Introducción a los Sistemas de Gestión de Bases de Datos (SGBD) Capítulo 1: Introducción a los Sistemas de Gestión de Bases de Datos (SGBD) Fernando Cano Espinosa Universidad de Oviedo. Departamento de Informática fcano@uniovi.es Produced with L A T E X seminar style

Más detalles

PROGRAMA FORMATIVO MICROSOFT ACCESS 2003 (COMPLETO)

PROGRAMA FORMATIVO MICROSOFT ACCESS 2003 (COMPLETO) PROGRAMA FORMATIVO MICROSOFT ACCESS 2003 (COMPLETO) www.bmformacion.es info@bmformacion.es Objetivos Descripción del funcionamiento del programa de gestión de bases de datos Microsoft Access 2003, estudiando

Más detalles

SCT3000 95. Software para la calibración de transductores de fuerza. Versión 3.5. Microtest S.A. microtes@arrakis.es

SCT3000 95. Software para la calibración de transductores de fuerza. Versión 3.5. Microtest S.A. microtes@arrakis.es SCT3000 95 Versión 3.5 Software para la calibración de transductores de fuerza. Microtest S.A. microtes@arrakis.es Introducción El programa SCT3000 95, es un sistema diseñado para la calibración automática

Más detalles

Capitulo 5. Implementación del sistema MDM

Capitulo 5. Implementación del sistema MDM Capitulo 5. Implementación del sistema MDM Una vez que se concluyeron las actividades de análisis y diseño se comenzó la implementación del sistema MDM (Manejador de Documentos de MoProSoft). En este capitulo

Más detalles

1.1.- Objetivos de los sistemas de bases de datos 1.2.- Administración de los datos y administración de bases de datos 1.3.- Niveles de Arquitectura

1.1.- Objetivos de los sistemas de bases de datos 1.2.- Administración de los datos y administración de bases de datos 1.3.- Niveles de Arquitectura 1. Conceptos Generales 2. Modelo Entidad / Relación 3. Modelo Relacional 4. Integridad de datos relacional 5. Diseño de bases de datos relacionales 6. Lenguaje de consulta estructurado (SQL) 1.1.- Objetivos

Más detalles

Definición de clases: Herencia, polimorfismo, ligadura dinámica

Definición de clases: Herencia, polimorfismo, ligadura dinámica Tema 7 Definición de clases: Herencia, polimorfismo, ligadura dinámica Con alguna frecuencia es necesario definir clases de objetos entre las cuales hay elementos comunes. En una aplicación en la cual

Más detalles

BASES DE DATOS TEMA 1. INTRODUCCION

BASES DE DATOS TEMA 1. INTRODUCCION Contenidos generales BASES DE DATOS TEMA 1. INTRODUCCION Bases de datos, Sistemas de gestión de bases de datos y Sistemas de bases de datos Bases de datos vs. Sistemas de archivos Objetivos de los Sistemas

Más detalles

Propuesta de Portal de la Red de Laboratorios Virtuales y Remotos de CEA

Propuesta de Portal de la Red de Laboratorios Virtuales y Remotos de CEA Propuesta de Portal de la Red de Laboratorios Virtuales y Remotos de CEA Documento de trabajo elaborado para la Red Temática DocenWeb: Red Temática de Docencia en Control mediante Web (DPI2002-11505-E)

Más detalles

Operación Microsoft Access 97

Operación Microsoft Access 97 Trabajar con Controles Características de los controles Un control es un objeto gráfico, como por ejemplo un cuadro de texto, un botón de comando o un rectángulo que se coloca en un formulario o informe

Más detalles

Diagrama de Clases. Diagrama de Clases

Diagrama de Clases. Diagrama de Clases Diagrama de Clases 1 Diagrama de Clases El propósito de este diagrama es el de representar los objetos fundamentales del sistema, es decir los que percibe el usuario y con los que espera tratar para completar

Más detalles

ELEMENTO I INTRODUCCION A LOS SISTEMAS DE BASES DE DATOS

ELEMENTO I INTRODUCCION A LOS SISTEMAS DE BASES DE DATOS Base de Datos ELEMENTO I INTRODUCCION A LOS SISTEMAS DE BASES DE DATOS Una base de datos es un conjunto de elementos de datos que se describe a sí mismo, con relaciones entre esos elementos, que presenta

Más detalles

Toda base de datos relacional se basa en dos objetos

Toda base de datos relacional se basa en dos objetos 1. INTRODUCCIÓN Toda base de datos relacional se basa en dos objetos fundamentales: las tablas y las relaciones. Sin embargo, en SQL Server, una base de datos puede contener otros objetos también importantes.

Más detalles

Modelo de Objetos Distribuidos

Modelo de Objetos Distribuidos Remote Method Invocation Modelo de Objetos Distribuidos Un objeto remoto es un objeto cuyos métodos pueden ser invocados desde otra máquina virtual de java, potencialmente en un host diferente. Modelo

Más detalles

Microsoft Access proporciona dos métodos para crear una Base de datos.

Microsoft Access proporciona dos métodos para crear una Base de datos. Operaciones básicas con Base de datos Crear una Base de datos Microsoft Access proporciona dos métodos para crear una Base de datos. Se puede crear una base de datos en blanco y agregarle más tarde las

Más detalles

Master en Gestion de la Calidad

Master en Gestion de la Calidad Master en Gestion de la Calidad Registros de un Sistema de Gestion de la Calidad Manual, procedimientos y registros 1 / 9 OBJETIVOS Al finalizar esta unidad didáctica será capaz: Conocer que es un registro

Más detalles

PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación. II MODELOS y HERRAMIENTAS UML. II.2 UML: Modelado de casos de uso

PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación. II MODELOS y HERRAMIENTAS UML. II.2 UML: Modelado de casos de uso PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación II MODELOS y HERRAMIENTAS UML 1 1 Modelado de casos de uso (I) Un caso de uso es una técnica de modelado usada para describir lo que debería hacer

Más detalles

Tools. Ibermática Soluciones Empresariales 2012, Todos los derechos reservados http://soluciones.ibermatica.com

Tools. Ibermática Soluciones Empresariales 2012, Todos los derechos reservados http://soluciones.ibermatica.com Tools http://soluciones.ibermatica.com La aplicación Tools Ibermática incluye 15 aplicaciones que llevan a cabo varios trabajos centrados en el diseño. Estas aplicaciones han sido desarrolladas pensando

Más detalles

BANCO DE PREGUNTAS PARA EVALUACIÓN DE CONOCIMIENTOS DEL CONCURSO DE MÉRITOS Y OPOSICIÓN EXPERTO EN DESARROLLO DE SISTEMAS 1

BANCO DE PREGUNTAS PARA EVALUACIÓN DE CONOCIMIENTOS DEL CONCURSO DE MÉRITOS Y OPOSICIÓN EXPERTO EN DESARROLLO DE SISTEMAS 1 BANCO DE PREGUNTAS PARA EVALUACIÓN DE CONOCIMIENTOS DEL CONCURSO DE MÉRITOS Y OPOSICIÓN EXPERTO EN DESARROLLO DE SISTEMAS 1 1. Cuáles de los siguientes enunciados son declaraciones válidas? 2. Cuál de

Más detalles

Planificación en Team Foundation Server 2010

Planificación en Team Foundation Server 2010 Planificación en Team Foundation Server 2010 Planificación y Seguimientos en Proyectos Agile con Microsoft Visual Studio Team Foundation Server 2010 Dirigido a: Todos los roles implicados en un proyecto

Más detalles

Arquitectura de sistema de alta disponibilidad

Arquitectura de sistema de alta disponibilidad Mysql Introducción MySQL Cluster esta diseñado para tener una arquitectura distribuida de nodos sin punto único de fallo. MySQL Cluster consiste en 3 tipos de nodos: 1. Nodos de almacenamiento, son los

Más detalles

Introducción. Componentes de un SI. Sistema de Información:

Introducción. Componentes de un SI. Sistema de Información: Introducción. Sistema de Información: Conjunto de elementos relacionados entre sí de acuerdo a ciertas reglas, que aporta a la organización la información necesaria para el cumplimiento de sus fines, para

Más detalles

Oracle 12c DISEÑO Y PROGRAMACIÓN

Oracle 12c DISEÑO Y PROGRAMACIÓN Oracle 12c Se estudia el servidor de bases de datos empresarial Oracle 12c, centrándose especialmente en el punto de vista de un diseñador o programador de bases de datos, pero explicando también cómo

Más detalles

Registro (record): es la unidad básica de acceso y manipulación de la base de datos.

Registro (record): es la unidad básica de acceso y manipulación de la base de datos. UNIDAD II 1. Modelos de Bases de Datos. Modelo de Red. Representan las entidades en forma de nodos de un grafo y las asociaciones o interrelaciones entre estas, mediante los arcos que unen a dichos nodos.

Más detalles

App para realizar consultas al Sistema de Información Estadística de Castilla y León

App para realizar consultas al Sistema de Información Estadística de Castilla y León App para realizar consultas al Sistema de Información Estadística de Castilla y León Jesús M. Rodríguez Rodríguez rodrodje@jcyl.es Dirección General de Presupuestos y Estadística Consejería de Hacienda

Más detalles

11. Algunas clases estándar de Java (II)

11. Algunas clases estándar de Java (II) 122 A. García-Beltrán y J.M. Arranz 11. Algunas clases estándar de Java (II) Objetivos: a) Presentar la clase predefinida en Java para trabajar con arrays b) Interpretar el código fuente de una aplicación

Más detalles

LABORATORIO 10. ADMINISTRACIÓN DE COPIAS DE SEGURIDAD EN SQL SERVER

LABORATORIO 10. ADMINISTRACIÓN DE COPIAS DE SEGURIDAD EN SQL SERVER LABORATORIO 10. ADMINISTRACIÓN DE COPIAS DE SEGURIDAD EN SQL SERVER GUÍA DE LABORATORIO Nº 1O Actividad de Proyecto No. 12: ESTABLECER PLANES DE RESGUARDO, RESTAURACION Y CONTINGENCIA. Estructura de contenidos.

Más detalles

abacformacio@abacformacio.com 1

abacformacio@abacformacio.com 1 Cu Oracle 10gg Estudia el servidor de bases de datos Oracle 10g desde el punto de vista de un diseñador y programador de bases de datos, prestando atención a los objetos que puede crear, como tablas, consultas

Más detalles

PROGRAMA FORMATIVO MICROSOFT ACCESS 2007 (COMPLETO)

PROGRAMA FORMATIVO MICROSOFT ACCESS 2007 (COMPLETO) PROGRAMA FORMATIVO MICROSOFT ACCESS 2007 (COMPLETO) www.bmformacion.es info@bmformacion.es Objetivos Descripción del funcionamiento del programa de gestión de bases de datos Microsoft Access 2007, estudiando

Más detalles

Hi-Spins. Hi-Spins - Novedades v.10.2.0 10.2.2

Hi-Spins. Hi-Spins - Novedades v.10.2.0 10.2.2 Hi-Spins Hi-Spins - Novedades 10.2.2 Tabla de contenido Hi-Spins Consulta Renovación de la presentación gráfica................................... 3 Visualización compacta de dimensiones en ventana de

Más detalles

JavaScript como Orientación a Objetos

JavaScript como Orientación a Objetos Gustavo Lacoste (gustavo@lacosox.org) October 2012 Resumen El objetivo de las siguientes notas es generar una estructura en JavaScript que nos permita reutilizar de manera limpia las funciones creadas

Más detalles

a) Cita y comenta brevemente los grados de acoplamiento. Clasifícalos y ordénalos en orden creciente al nivel de acoplamiento asociado.

a) Cita y comenta brevemente los grados de acoplamiento. Clasifícalos y ordénalos en orden creciente al nivel de acoplamiento asociado. Departamento de Informática y Automática INGENIERÍA DEL SOFTWARE PARTE II: CONCEPTOS TEÓRICOS Y PRÁCTICOS DNI Apellidos y nombre 1. Responde a las siguientes cuestiones (2 puntos): a) Cita y comenta brevemente

Más detalles

Gestión de archivos (módulo transversal, MF0978_2)

Gestión de archivos (módulo transversal, MF0978_2) Gestión de archivos (módulo transversal, MF0978_2) Curso de capacitación para la obtención del módulo formativo Gestión de archivos del Certificado de profesionalidad (código MF0978_2), asociado a la unidad

Más detalles

CONSULTAS CON SQL. 3. Hacer clic sobre el botón Nuevo de la ventana de la base de datos. Aparecerá el siguiente cuadro de diálogo.

CONSULTAS CON SQL. 3. Hacer clic sobre el botón Nuevo de la ventana de la base de datos. Aparecerá el siguiente cuadro de diálogo. CONSULTAS CON SQL 1. Qué es SQL? Debido a la diversidad de lenguajes y de bases de datos existentes, la manera de comunicar entre unos y otras sería realmente complicada a gestionar de no ser por la existencia

Más detalles

Correspondencias entre taxonomías XBRL y ontologías en OWL Unai Aguilera, Joseba Abaitua Universidad de Deusto, EmergiaTech

Correspondencias entre taxonomías XBRL y ontologías en OWL Unai Aguilera, Joseba Abaitua Universidad de Deusto, EmergiaTech Correspondencias entre taxonomías XBRL y ontologías en OWL Unai Aguilera, Joseba Abaitua Universidad de Deusto, EmergiaTech Resumen Todo documento XBRL contiene cierta información semántica que se representa

Más detalles

Elementos requeridos para crearlos (ejemplo: el compilador)

Elementos requeridos para crearlos (ejemplo: el compilador) Generalidades A lo largo del ciclo de vida del proceso de software, los productos de software evolucionan. Desde la concepción del producto y la captura de requisitos inicial hasta la puesta en producción

Más detalles

Ejercicios - Persistencia en Android: proveedores de contenidos y SharedPreferences

Ejercicios - Persistencia en Android: proveedores de contenidos y SharedPreferences Ejercicios - Persistencia en Android: proveedores de contenidos y SharedPreferences Índice 1 Compartir datos entre actividades con Shared Preferences (0.75 puntos)... 2 2 Actividad de preferencias (0.75

Más detalles

8. Sentencia return y métodos

8. Sentencia return y métodos 92 A. García-Beltrán y J.M. Arranz 8. Sentencia return y métodos Objetivos: a) Describir el funcionamiento de la sentencia return b) Interpretar el resultado de una sentencia return en el código fuente

Más detalles

Figura 4.1 Clasificación de los lenguajes de bases de datos

Figura 4.1 Clasificación de los lenguajes de bases de datos 1 Colección de Tesis Digitales Universidad de las Américas Puebla Romero Martínez, Modesto Este capítulo describen los distintos lenguajes para bases de datos, la forma en que se puede escribir un lenguaje

Más detalles

Sistemas Multimedia Distribuidos. Juan A. Sigüenza Departamento de Ingeniería Informática UAM

Sistemas Multimedia Distribuidos. Juan A. Sigüenza Departamento de Ingeniería Informática UAM Sistemas Multimedia Distribuidos Juan A. Sigüenza Departamento de Ingeniería Informática UAM Componentes de un Sistema Multimedia Distribuido Software de aplicación Almacenamiento de Documentos Almacenamiento

Más detalles

Prof. Dr. Paul Bustamante

Prof. Dr. Paul Bustamante Prácticas de C++ Practica Nº 8 Informática II Fundamentos de Programación Prof. Dr. Paul Bustamante ÍNDICE ÍNDICE... 1 1. INTRODUCCIÓN... 1 1.1 EJERCICIO 1: HERENCIA Y POLIMORFISMO I... 1 1.2 EJERCICIO

Más detalles

Ejercicio 1 (3 puntos).-

Ejercicio 1 (3 puntos).- URJC Ingeniería Técnica de Gestión Abril 2011 Asignatura: SOFTWARE AVANZADO Normas: La prueba consta de 2 ejercicios. La máxima nota del examen es un 8. Siendo la práctica la que añade los 2 puntos que

Más detalles

Sistemas de Gestión de Documentos Electrónicos de Archivo (SGDEA)

Sistemas de Gestión de Documentos Electrónicos de Archivo (SGDEA) Sistemas de Gestión de Documentos Electrónicos de Archivo (SGDEA) Agenda 1. Introducción 2. Concepto Documento Electrónico 3. A que se le denomina Documento Electrónico 4. Componentes de un Documento Electrónico

Más detalles

CICLO DE VIDA DEL SOFTWARE

CICLO DE VIDA DEL SOFTWARE CICLO DE VIDA DEL SOFTWARE 1. Concepto de Ciclo de Vida 2. Procesos del Ciclo de Vida del Software 3. Modelo en cascada 4. Modelo incremental 5. Modelo en espiral 6. Prototipado 7. La reutilización en

Más detalles

INGENIERÍA DE SOFTWARE. Sesión 3: Tipos

INGENIERÍA DE SOFTWARE. Sesión 3: Tipos INGENIERÍA DE SOFTWARE Sesión 3: Tipos Contextualización Actualmente existe una gran variedad en los software que se pueden clasificar en varias categorías, como pueden ser, por tipo de licencia, tipo

Más detalles

BASES DE DATOS, MODELOS DE DATOS Y DBMS

BASES DE DATOS, MODELOS DE DATOS Y DBMS BASES DE DATOS, MODELOS DE DATOS Y DBMS Maestría en Bioinformática Marzo 2010 Bases de Datos Algunas definiciones: Bases de Datos y DBMS Procesos y Actores Involucrados Por qué usar DBMSs? Cuándo no usar

Más detalles

Microsoft Access 2010 (Completo)

Microsoft Access 2010 (Completo) Microsoft Access 2010 (Completo) Descripción: Descripción del funcionamiento del programa de gestión de bases de datos Microsoft Access 2010, estudiando los conceptos fundamentales de las bases de datos:

Más detalles

Eurowin 8.0 SQL. Manual del módulo TALLAS Y COLORES

Eurowin 8.0 SQL. Manual del módulo TALLAS Y COLORES Eurowin 8.0 SQL Manual del módulo TALLAS Y COLORES Documento: me_tallasycolores Edición: 05 Nombre: Manual del módulo Tallas y Colores de Eurowin 8.0 SQL Fecha: 30-04-2012 Tabla de contenidos 1. Introducción...

Más detalles

Ejercicios - Persistencia en Android: ficheros y SQLite

Ejercicios - Persistencia en Android: ficheros y SQLite Ejercicios - Persistencia en Android: ficheros y SQLite Índice 1 Uso de ficheros (0.5 puntos)...2 2 Persistencia con ficheros (0.5 puntos)...3 3 Base de datos: SQLiteOpenHelper (0.5 puntos)... 3 4 Base

Más detalles

CAPÍTULO 4. EL EXPLORADOR DE WINDOWS XP

CAPÍTULO 4. EL EXPLORADOR DE WINDOWS XP CAPÍTULO 4. EL EXPLORADOR DE WINDOWS XP Características del Explorador de Windows El Explorador de Windows es una de las aplicaciones más importantes con las que cuenta Windows. Es una herramienta indispensable

Más detalles

Capacitación Rational Funcional Tester

Capacitación Rational Funcional Tester Capacitación Rational Funcional Tester Clínica Alemana Santiago, 28 de abril de 2009 Introducción La presente exposición es sobre las principales características de Rational Functional Tester Describiendo

Más detalles