TIPOS DE DATOS ABSTRACTOS

Slides:



Advertisements
Presentaciones similares
IBD Plan 90 y 2003 Clase 10.
Advertisements

Introducción al Teorema de Gödel Eduardo Alejandro Barrio UBA - CONICET 2do Cuatrimestre de 2009 Eduardo Alejandro Barrio UBA.
Lenguaje Unificado de Modelado
TECNICATURA UNIVERSITARIA EN INFORMATICA
PROF. ING. JULIO CESAR CANO RAMIREZ
Resolución del Examen Buena Suerte.
Resolución de Problemas Algoritmos y Programación
Polimorfismo Unidad 4.
Técnico en programación de Software
1.1 Concepto de Tipo de Datos Abstracto.
Estructuras de datos y algoritmos
Tipos de Datos Abstractos Modularidad
POO Santiago, Mayo 2004 TRABAJO DE INVESTIGACIÓN POO Programación Orientada a Objetos CENAFOM Carolina Bravo V. Jaime Jofré B.
Tipo de Dato Abstracto Tipos de datos:
GENERACIONES DE LENGUAJES DE PROGRAMACIÓN
Modelo Entidad Relación E-R
Encapsulamiento y Abstracción
CAPITULO 2 La Representación del Conocimiento
Modelo entidad relación
Sistemas Distribuidos “Técnicas de Especificación Formal”
METODOLOGIA DE LA PROGRAMACION
El paradigma de la orientación a objetos La programación orientada a objetos genera códigos eficientes y estandariza la metodología de programación, además.
TAD_Ana Lilia Laureano/UAM-A1 Tipos Abstractos de Datos y Asertos Ana Lilia Laureano Cruces Universidad Autónoma Metropolitana-Azcapotzalco.
Ingeniería de software Unidad II Ingeniería de Software Orientado a Objetos Principios Orientados a Objetos Tema Semana 7.
 El termino OO, significa que el software es organizado como una colección de objetos. Un objeto es un paquete de software que contiene datos y procedimientos.
ALGORITMOS es un conjunto preescrito de instrucciones o reglas bien definidas, ordenadas y finitas que permite realizar una actividad mediante pasos.
Programación de Computadores
Modelado Arquitectónico
Unidad 1 Definiciones Básicas
CARACTERÍSTICAS DE LOS PROGRAMAS
Problemas, algoritmos y programas: Modelar: Simular o programar su solución en un computador. Algoritmos: Es un conjunto finito, y no ambiguo de etapas.
Postulados del álgebra de boole
Viviana Poblete López Módulo: Modelo de Datos
Facultad de Ciencias de la Computación MC Beatriz Beltrán Martínez
TIPOS DE DATOS ABSTRACTOS
Inteligencia artificial
Introducción a los tipos de datos abstractos
1.1 Concepto y terminología
Introducción a la POO • ¿Qué es la programación orientada a objets (POO)? – Un “paradigma” de programación – Una forma de pensar acerca de los problemas.
Fundamentos de programación
Sistemas Concurrentes: programación concurrente
Programación I Universidad Nacional de Luján
OPERACIÓN DE CIRCUITOS ELECTRONICOS DIGITALES
Modelo de Dominio Angela Carrillo R..
Universidad Autónoma San Francisco CARRERA PROFESIONAL: Lengua, Traducción e Interpretación Asignatura: MATEMÁTICA Tema: “SISTEMA FORMAL”
Un nuevo conjunto….. Los números complejos
Tecnologías de las computadoras
Unidad 1: FUNDAMENTOS DE COMPUTACIÓN Y PSEUDOLENGUAJE
Joel Pérez López.  "Un Objeto de Aprendizaje es un conjunto de recursos digitales, autocontenible y reutilizable, con un propósito educativo y constituido.
Programación Orientada a Objetos (P.O.O.)
Bases de Datos.
Unidad I Java y C++ : Similitudes y diferencias
Objetivo Mostrar los fundamentos de la programación a través de ejemplos y prácticas utilizadas cotidianamente en el desarrollo de aplicaciones.
PROGRAMACION ORIENTADA A OBJETOS
Métrica v2.1 Técnicas: Modelado de datos (Parte 1)
Estructuras de Datos y Algoritmos Introducción. Texto Requerido: Carrano & Prichard: Data Abstraction and Problem Solving with Java; Walls and Mirrors,
Patricio A. Castillo José M. Galarce Agosto 23 de 2008 Segunda Clase.
Computación I (CI-2125) Clase 2 Prof. Mireya Morales.
Examen diagnóstico ¿Qué es una computadora? ¿Qué es un algoritmo?
Reglas Básicas del Álgebra de Boole
Circuitos Lógicos 20 septiembre 2010.
Números Complejos.
Presente un cuestionario con los aspectos mas importantes sobre los
Metodología de la programación
Abstracción El concepto de abstracción es esencial en ciencias de la computación. Un programa es en sí mismo una abstracción, un modelo de la resolución.
Técnica: es un procedimiento o conjunto de procedimientos, (reglas normas o protocolos), que tienen como objetivo obtener un resultado determinado, ya.
Décimo Curso de Programación Básica con NQC “Segunda Clase” Cristián Arenas Ulloa Agosto 29 de 2009.
Logaritmo En análisis matemático, usualmente, el logaritmo de un número real positivo —en una base de logaritmo determinada— es el exponente al cual hay.
ELEMENTOS BÁSICOS DE PROGRAMACIÓN EN C# Mtro. José David Uc Salas
Hay muchas formas de implementar un TDA: Arreglos Estructuras y Clases. Aunque en este curso sólo trabajaremos con estructuras y arreglos, es importante.
Transcripción de la presentación:

TIPOS DE DATOS ABSTRACTOS Facultad de Ciencias y Tecnología Departamento de Computación

TIPOS DE DATOS ABSTRACTOS (TDA) Abstracción: Proceso de simplificación de la realidad mediante el cual se capta lo esencial y se ignora lo irrelevante de un elemento del mundo real Empleado Nombre C.I. Fecha de Ingreso Fecha de Nacimiento Departamento Sueldo Abstracción Conceptos Básicos Conceptos Básicos EU/AA Dispositiva 2-13

TIPOS DE DATOS ABSTRACTOS (TDA) Dato: Abstracción de la información en términos representables y manipulables en un computador Abstracción Edad: 25 años Edad: entero; Edad  25; Conceptos Básicos EU/AA Conceptos Básicos Dispositiva 3-13

TIPOS DE DATOS ABSTRACTOS (TDA) Tipo de Dato: Define el conjunto de valores válidos del tipo y las operaciones que se pueden aplicar al tipo. Tipo Booleano Conjunto de valores: {Verdadero, Falso} Operaciones: not, and, or Conceptos Básicos EU/AA Conceptos Básicos Dispositiva 4-13

TIPOS DE DATOS ABSTRACTOS (TDA) Tipo de Dato Abstracto (TDA): Tipo de dato creado por el programador (no provisto por el lenguaje) que representa un objeto del mundo real que es útil en el dominio del problema. Tipo de Dato Abstracto (TDA): es un modelo matemático con una colección de operaciones definidas sobre el modelo Tipo de Dato Abstracto (TDA): una clase de objetos definida por una especificación independiente de la representación Para desarrollar un TDA deben definirse los objetos abstractos que pertenecen al mismo y las operaciones a realizar sobre dichos objetos Conceptos Básicos EU/AA Conceptos Básicos Dispositiva 5-13

Especificación (Diseño) TIPOS DE DATOS ABSTRACTOS (TDA) Ciclo de vida de un TDA Especificación (Diseño) Implementación Uso Especificación: Especificación del objeto y sus propiedades (Definición formal del TDA) Implementación: Convertir el TDA en un código utilizable por una aplicación. Uso: Aplicación del TDA para la resolución de un problema en una aplicación. Conceptos Básicos EU/AA Conceptos Básicos Dispositiva 6-13

Especificación (Diseño) TIPOS DE DATOS ABSTRACTOS (TDA) Ciclo de vida de un TDA Especificación (Diseño) Implementación Uso ¿Cómo es la estructura del TDA? ¿Cuál es el conjunto de valores válidos? Invariante Especificación Algebraica Especificación Operacional ¿Cuáles son sus operaciones? Conceptos Básicos Conceptos Básicos EU/AA Dispositiva 7-13

TIPOS DE DATOS ABSTRACTOS (TDA) Ejemplo: El TDA Complejo Un número complejo es un objeto matemático que puede representarse como: Una pareja ordenada, por ejemplo (2,3) ó Como un polinomio, por ejemplo 2 + 3 i Los números complejos tienen asociados operaciones, como la suma, resta y multiplicación. Si tenemos dos complejos: c1 = (r1, i1) y c2 = (r2, i2) , podemos definir las operaciones como: c1+ c2 = (r1 + r2, i1 + i2) c1- c2 = (r1 - r2, i1 - i2) c1. c2 = (r1 . r2 – i1 . i2, r2. i2 + r1 . i2) Conceptos Básicos Conceptos Básicos EU/AA Dispositiva 8-13

TIPOS DE DATOS ABSTRACTOS (TDA) Ejemplo: El diseño del invariante del TDA (CC) ¿Cómo es la estructura del TDA? El TDA Complejo contiene dos partes: la real y la imaginaria ¿Cuál es el conjunto de valores válidos? Esta se puede expresar en términos del conjunto de valores válidos de cada una de las partes del TDA. Formalmente se expresaría: Complejo = (real, imaginario) ^ real Є R ^ imaginario Є I Conceptos Básicos Conceptos Básicos EU/AA Dispositiva 9-13

TIPOS DE DATOS ABSTRACTOS (TDA) Invariante Es una representación abstracta del objeto, sin comprometerse con una estructura concreta ni con un tipo de lenguaje. Es una proposición lógica que expresa el conjunto de valores válidos del TDA Conceptos Básicos EU/AA Conceptos Básicos Dispositiva 9-13

TIPOS DE DATOS ABSTRACTOS (TDA) Especificación Algebraica (CC) El significado y efecto de las operaciones es descrito mediante un conjunto de axiomas, en forma de ecuaciones, que relacionan dichas operaciones. Especificación Operacional La operación se representa mediante un procedimiento o una función, con una precondición que indica las condiciones que deben cumplirse antes de realizar la operación, y una postcondición que establece las condiciones que se cumplen una vez realizada la operación. ( {P} S {Q} ) Conceptos Básicos Conceptos Básicos EU/AA Dispositiva 10-13

Especificación (Diseño) TIPOS DE DATOS ABSTRACTOS (TDA) Especificación (Diseño) Implementación Uso Consiste en tomar el diseño del TDA y convertirlo en algo real, en nuestro caso es llevarlo a un lenguaje de computador. La implementación de un TDA no es única; dado un diseño de un TDA es posible implementarlo de muy diversas formas. Cada implementación puede ser distinta en dos aspectos básicos: Diseño de las Estructuras de Datos Desarrollo de las operaciones (Procedimientos y Funciones) Conceptos Básicos EU/AA Conceptos Básicos Dispositiva 11-13

Especificación (Diseño) TIPOS DE DATOS ABSTRACTOS (TDA) Especificación (Diseño) Implementación Uso Utilización del TDA dentro de una aplicación para la resolución de un problema especifico. Como los TDAs se diseñan generales, no es extraño que un mismo TDA, se use en muchas aplicaciones. Un TDA también puede ser usado para construir otros TDA`s Conceptos Básicos EU/AA Conceptos Básicos Dispositiva 12-13

TIPOS DE DATOS ABSTRACTOS (TDA) Algunas Conclusiones Tener un conjunto de TDAs reutilizables, es como tener un arcenal de pequeñas piezas que se pueden usar una y otra vez para construir diversas cosas. Más fácil construir un software complejo Un TDA correcto y libre de errores, implica aplicaciones libres de errores …TDA una herramienta poderosa para el desarrollo de software. Conceptos Básicos EU/AA Dispositiva 13-13