Programación Estructurada

Documentos relacionados
Programación Estructurada

Programación Estructurada

Auditoría administrativa

Diseño Estructurado de Algoritmos

ASIGNATURA: ESTRUCTURA DE DATOS II

Auditoría administrativa

Auditoría administrativa

Java Avanzado. Guía 1. Java Avanzado Facultad de Ingeniería. Escuela de computación.

Contabilidad de Costos

Análisis del Consumidor

Principios de Finanzas

Modelos y Bases de Datos

Java Avanzado Facultad de Ingeniería. Escuela de computación.

INDICE Prologo Capitulo 1. Algoritmos y programas Capitulo 2. La resolución de los problemas con computadoras y las herramientas de programación

LENGUAJES DE PROGRAMACIÓN WEB (PHP1, HTML52)

Diseño Estructurado de Algoritmos

Administración y Técnicas de Ventas

Auditoría administrativa

Análisis del Consumidor

Teorías del aprendizaje

Derecho de la Seguridad Social

Evaluación de Proyectos de Inversión

Métodos de análisis del consumidor

Fundamentos de la Mercadotecnia

Matemáticas Financieras

Estructuras Administrativas

EI MT1008 Programación II

En la sección previa abordamos el tema del presupuesto de capital. En esta sección veremos cómo se realiza un presupuesto de flujo de efectivo.

Administración de Ventas

INGENIERÍA DEL SOFTWARE

Evaluación de Proyectos de Inversión

UNIVERSIDAD AUTÓNOMA DE CHIAPAS LICENCIATURA EN SISTEMAS COMPUTACIONALES

Administración y Dirección Estratégica

Teorías del aprendizaje

APLICACIONES MÓVILES NATIVAS

Crítico y sociopolítico

Contabilidad General

Administración de Ventas

Dirección de Mercadotecnia y Ventas

ADMINISTRACIÓN DE LA PRODUCCIÓN

Teorías del aprendizaje

Nombre: Modelo de planeación de utilidades a corto plazo

Contabilidad de Costos

Multimedia Educativo

Aspectos Básicos de Networking

Teorías del aprendizaje

Contabilidad General

Matemáticas Financieras

Técnicas de planeación y control

ESCUELA SUPERIOR POLITECNICA DEL LITORAL PROGRAMA DE ESTUDIOS

Contabilidad de Costos

Tema: Tipos Abstractos de Datos (TAD s) en C++.

Modelo educativo y prospectiva

Filosofía de la Educación

Unidad I: Introducción a las estructuras de datos

ADMINISTRACIÓN DE LA PRODUCCIÓN

Administración de Ventas

Finanzas Internacionales

Un. VI. Generador de código intermedio.

Administración de Ventas

Escribir programas a partir de un diagrama de flujo

Matemáticas Universitarias

CL_ Quick Microsoft SQL Server 2012 Analysis Services.

Fundamentos de la Mercadotecnia

Modelos Para la Toma de Decisiones

Filosofía de la Educación

PROGRAMA DE ASIGNATURA DE PROGRAMACIÓN I

Universidad Autónoma del Estado de México 2016, Año del 60 Aniversario de la Universidad Autónoma del Estado de México

Agradecimientos. Nota de los autores. 1 Problemas, algoritmos y programas 1

Contabilidad de Costos

Finanzas Corporativas Avanzadas

Convivencia Introducción

Técnicas de Planeación y Control

El estudiante ubica el objetivo de estudio de la microeconomía y a las unidades productivas. La microeconomía es parte de la economía?

AREA A LA QUE PERTENECE: 103 Matemática Básica 2 34 créditos POST REQUISITO: CATEGORIA: Obligatorio SEMESTRE: Primer Semestre 2015

POST REQUISITO: CATEGORIA: Obligatorio SEMESTRE: Primer Semestre 2015 HORAS POR SEMANA DEL LABORATORIO: DIAS QUE SE IMPARTE EL LABORATORIO:

Fundamentos de programación JAVA

Teorías del aprendizaje

Fundamentos de Turismo

Universidad Centroccidental Lisandro Alvarado. Decanato de Ciencias y Tecnología Departamento de Sistemas

Al concluir la sesión el alumno podrá caracterizar el proceso de planeación del capital humano, sus ventajas y aplicación en una empresa.

Matemáticas Universitarias

UNIVERSIDAD DISTRITAL FRANCISCO JOSÉ DE CALDAS FACULTAD DE INGENIERÍA PROYECTO CURRICULAR DE INGENIERÍA INDUSTRIAL

Evaluación de Proyectos de Inversión

Por qué expresar de manera algebraica?

UNIDAD 9. DATOS COMPLEJOS PILAS

Programa de actualización profesional ACTI.NET Desarrollo de aplicaciones locales y web con tecnología VB.NET

Transcripción:

Programación Estructurada

PROGRAMACIÓN ESTRUCTURADA 1 Sesión No. 9 Nombre: Tipos de datos abstractos Contextualización Conforme los lenguajes de programación evolucionan, nuevas técnicas aparecen para lograr un código fuertemente diseñado, modular y especializado. Uno de los conceptos que hasta la fecha se siguen ocupando es el de la abstracción. A que nos referimos con abstracción? Supongamos que yo te pido que pienses en un elefante. Tu mente rápidamente forma la figura de un elefante con su tamaño, color, forma, trompa, etc. Sin tener que definirlo, la pura palabra elefante se asocias con características distintivas que lo definen (a él y a todos los elefantes), a eso se le llama abstracción. La evolución de los lenguajes de programación para la solución de problemas cada vez más grandes y específicos, han orillado a implementar estrategias de programación que emulan este tipo de concepciones en los códigos. La abstracción de datos es una constante en los programas que hoy en día se utilizan y que seguramente seguirán perfeccionándose debido a su utilidad.

PROGRAMACIÓN ESTRUCTURADA 2 Introducción al Tema En la sesión anterior, cuando se hablaba de arreglos multidimensionales se recomendaba que no rebasaran las 3 dimensiones, ya que muchas dimensiones convertirían en abstracto un dato. El objetivo de los arreglos es obtener una descripción sobre un dato, a mayor profundidad mayor detalle debido a sus características, sin embargo, es difícil de seguir las líneas en planos abstractos formados por arreglos multidimensionales. El modelo de dato abstracto permite definir las características de un objeto de forma que con sólo nombrarlo en el programa implique que todas sus características están disponibles para el uso. El Tipo de Dato Abstracto se puede definir como un modelo matemático compuesto por una colección de operaciones y elementos definidos. En esta sesión comenzaremos con una nueva unidad llamada tipos de datos abstractos y nos enfocaremos a la implementación de éstos.

PROGRAMACIÓN ESTRUCTURADA 3 Explicación 5.1 Implementación de un tipo de dato abstracto Un T.D.A. (tipo de dato abstracto), visto desde la parte de líneas de código, es representado como una función, es decir, se invoca y se obtienen resultados de él. Las operaciones dictadas dentro de un T.D.A. se dictan de forma local, es decir, los valores que en él se encuentran no afectan al resto del código, y las operaciones contenidas en el son propias y sólo entregan un resultado, a la contención de estos operadores se le conoce como encapsulamiento. El encapsulamiento de un T.D.A. debe tener un funcionamiento completo, es decir, no llevar a cabo tareas a medias, lo cual garantiza su portabilidad. Si consideramos que los tipos de datos abstractos son una representación junto con sus operaciones, es más natural encapsularlos de una forma conjunta. Para la implementación de un T.D.A. se recomiendan los siguientes pasos: 1. Diseñar la estructura de datos que definen al objeto/tarea a abstraer. 2. Crear funciones por cada operación que se realizara dentro del T.A.D. 3. Definir el tipo de operaciones que realizara el T.D.A. pueden ser tres tipos: Constructora: Crea elementos, declara variables, objetos etc. Modificadora: Operaciones que deben alterar el estado del T.A.D.

PROGRAMACIÓN ESTRUCTURADA 4 Analizadora: Valida el dato pasado para trabajar o no con él. Es importante recordar que, al igual que los arreglos, los T.A.D. también consumen memoria, para ayudar a la elasticidad del uso de la memoria, se pueden utilizar los operadores new y delete para asignar dinámicamente memoria o liberarla cuando ya no se utilice el T.A.D. Una vez enlistadas las operaciones y acciones que realizara el T.A.D. se escoge una representación interna dependiendo del lenguaje sobre el cual se desea crear. La representación deberá ocultarse utilizando métodos de ocultamiento de información propios de cada lenguaje. Usualmente la implementación del T.D.A. se debe implementar en un módulo separado, el cual será enlazado al programa principal. Se debe definir un fichero cabecera con la definición de las operaciones y la declaración del tipo.

PROGRAMACIÓN ESTRUCTURADA 5 Conclusión Los T.D.A. ciertamente son un tipo de datos difíciles de crear, debido a su complejidad de uso y su exigencia de diseño que no cualquier programador es capaz de desarrollar, la idea de implementar T.D.As, es para la especialización de operaciones complejas que sean repetitivas a los largo de un programa y que con una sola llamada puedan heredarse todas sus características que puedan ser utilizadas a lo largo del código del programa. Los T.D.A más comunes de implementar llevan una estricta relación con las estructuras de datos conocidas como pilas y colas, donde por lo regular se permiten almacenar datos a procesar en algún momento del programa.

PROGRAMACIÓN ESTRUCTURADA 6 Para aprender más No conoces las estructuras de datos de pilas y colas? Pilas. Es una estructura donde se permiten almacenar datos de un mismo tipo en la cual se lleva un comportamiento de extracción conocido como LIFO (last in-first out /primero en entrar-primero en salir), donde el proceso del T.D.A deberá llevar los siguientes procesos: 1. Crear pila 2. Meter dato 3. Sacar dato 4. Destruir pila 5. Vaciar pila Colas. Es una estructura de datos del mismo tipo de acceso por posición, con un comportamiento de extracción conocido como FIFO (fisrst in first out/ primero en entrar- primero en salir), donde el proceso del T.D.A deberá llevar los siguientes procesos: 1. Creación. 2. Transformación. 3. Observación. 4. Iteradores.

PROGRAMACIÓN ESTRUCTURADA 7 Actividad de Aprendizaje Con la finalidad de reforzar los conocimientos adquiridos a lo largo de esta sesión, ahora tendrás que realizar la siguiente actividad. Instrucciones Realiza un programa en C donde se emula la inserción y extracción de un dato en una pila, donde los datos ingresados por el usuario se almacenen y se impriman posteriormente en el orden que dicta una pila. Convertir en imagen en formato JPG el código Subirlo a la plataforma de la asignatura Esta actividad te ayudará a comprender la función de los Tipos de datos Abstractos en el lenguaje C, así como su correcta utilización, lo cual te facilitará a entender las siguientes sesiones. Esta actividad representa el 5% de tu calificación y se tomará en cuenta lo siguiente: Tus datos generales. Título. Programa en C de la inserción y extracción del dato de la pila. Ortografía y redacción. Referencias bibliográficas

PROGRAMACIÓN ESTRUCTURADA 8 Bibliografía Garrido, A; (2006). Abstracción y estructuras de datos en C++, España: Delta publicaciones. Gómez, A; (2008), Introducción a la computación, México: Cengage Learning. Harvey, M; (2004), C / C++ y Java cómo programar, México: Pearson Educación. Rice, P. (s/f). Desarrollo humano, estudio del ciclo vital, Pearson Prentice Hall.