La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Introducción al curso de programación estructurada. 1Introducción a la programación estructurada.

Presentaciones similares


Presentación del tema: "Introducción al curso de programación estructurada. 1Introducción a la programación estructurada."— Transcripción de la presentación:

1 Introducción al curso de programación estructurada. 1Introducción a la programación estructurada

2 Presentación. Daniel Alejandro García López Estudios de Licenciatura: Tecnológico de Villahermosa Ingeniería en sistemas computacionales, especialidad en redes y sistemas distribuidos. Estudios de Maestría: Universidad Veracruzana Maestría en Inteligencia Artificial. dalexgarcia@gmail.com Introducción a la programación estructurada2

3 Información del curso Horario(L.8.10, M.5.7, M.8.10) Temario y Recursos WebRecursos Web http://www.unistmo.edu.mx/~daniel.garcia/ Forma de evaluación(mínimo 85% asistencia). 80 % curso 50% examen 10 % tareas, exposiciones, participación. 20 % proyecto. 20% taller de programación(J.8.10, V.8.10). Introducción a la programación estructurada3

4 Bibliografía recomendada Fundamentos de programación, Algoritmos y Estructura de datos y Objetos, Joyanes, Luis, Editorial McGraw Hill, 2003. Metodología de la programación estructurada, Joyanes, Luis, Editorial McGraw Hill, 1993. El lenguaje de programación C, Kernighan y Ritchie, Editorial Prentice Hall, 1991. Como programar en C/C++, H.M. Deitel and P.J. Deitel, Ed. Prentice Hall, 1994, 2da. edición Algorítmica [en línea]. Universidad de las Palmas de Gran Canaria[fecha de consulta: 30 de septiembre del 2009]. Disponible en. Dr. Roberto Gómez Cárdenas. Curso Básico de Lenguaje C [en línea]. Instituto Tecnológico y de Estudios Superiores de Monterrey. [fecha de consulta: 30 de septiembre del 2009]. Disponible en. Introducción a la programación estructurada4

5 Tema 1 1. EL LENGUAJE DE PROGRAMACIÓN ANSI C. 1.1. Introducción a la programación estructurada. 1.2. Estructura de un programa. 1.3. Tipos de datos. 1.4. Operadores. 1.5. Ejemplos de instrucciones de entrada y salida. Introducción a la programación estructurada5

6 Ada Lovelace Introducción a la programación estructurada6 Tomada de: http://www.agnesscott.edu/lriddle/women/ada3.jpg

7 Entorno de Desarrollo Integrado: Devcpp http://www.bloodshed.net/devcpp.html Introducción a la programación estructurada7 Tomada de: http://www.bloodshed.net/

8 Diseño Descendente vs Diseño Ascendente Introducción a la programación estructurada8 Tomado de : http://www.mailxmail.com/curso- introduccion-lenguaje-pascal/programacion- descendente-top-down http://www.metrasupport.com/images/int egracion-boton%20copy.jpg

9 Tema 2 2. ESTRUCTURAS DE CONTROL. 2.1. Secuencial. 2.2. Selectivas. 2.3. Iterativas. Introducción a la programación estructurada9

10 10

11 Tema 3 3. FUNCIONES. 3.1 Definición de funciones. 3.2 Funciones con paso de parámetros por valor. 3.3 Funciones con paso de parámetros por referencia. 3.4 Funciones recursivas. Introducción a la programación estructurada11

12 Introducción a la programación estructurada12

13 Tema 4. 4. ARREGLOS. 4.1 Arreglos unidimensionales. 4.2 Arreglos bidimensionales. 4.3 Arreglos multidimensionales. 4.4 Arreglos como parámetros. Introducción a la programación estructurada13

14 Introducción a la programación estructurada14

15 Tema 5 5. APUNTADORES. 5.1 Apuntadores. 5.2 Aritmética de apuntadores. 5.3 Memoria estática y dinámica. 5.4 Arreglos dinámicos de una y dos dimensiones. 5.5 Funciones como parámetros. Introducción a la programación estructurada15

16 Tema 6 6. TIPOS DE DATOS DEFINIDOS POR EL PROGRAMADOR. 6.1 Introducción al tipo de dato abstracto. 6.2 Implementación de un tipo de dato abstracto. 6.3 Tipos de datos abstractos como parámetros. 6.4 Arreglos de tipos de datos abstractos. Introducción a la programación estructurada16

17 Tema 7 7. ARCHIVOS. 7.1 Operaciones básicas. 7.2 Texto y binarios. 7.3 Acceso secuencial y directo. Introducción a la programación estructurada17

18 Tarea Realizar la lectura y entregar un ensayo individual(no resumen) con un mínimo de 1000 palabras del primer ejercicio que se encuentra en la página del curso(Fecha de entrega Viernes 9 de Octubre del 2009, antes de las 18:00 hrs). Lecturas para ensayo sobre Ada Lovelace y Biografía( Inglés) Lecturas para ensayo sobre Ada Lovelace Biografía Inglés Introducción a la programación estructurada18

19 Conceptos Metodología: Conjunto de procedimientos, técnicas, herramientas y un soporte documental que ayuda a los desarrolladores a realizar nuevo software. Estructura: Es la descomposición ordenada de las partes de un todo. Conjunto de elementos interrelacionados que forman un todo. Programación estructurada: Consiste en el diseño, escritura y prueba de un programa, construido con estructura. Introducción a la programación estructurada19

20 Metodología de la programación Es la técnica que permite que la programación sea lo más eficaz posible en cuanto al desarrollo y mantenimiento. Conjunto de principios generales que un programador ha de seguir para desarrollar un programa Introducción a la programación estructurada20

21 Metodologías de programación Programación convencional Programación Estructurada Programación Modular Programación orientada a objetos. Introducción a la programación estructurada21

22 Programación orientada a objetos. Un Modelo de Objetos es un conjunto de entidades (denominadas objetos) que colaboran entre ellos para desempeñar una serie de servicios. Esos servicios se solicitan por medio del intercambio de mensajes. Todos los objetos del modelo pertenecen a algún tipo (Clase). El principio fundamental es que un Objeto es la representación de un concepto. Como tal, tendrá unas características (atributos) y un comportamiento, plasmado en una serie de operaciones. Introducción a la programación estructurada22

23 Desventajas de la Programación convencional Los programas suelen ser excesivamente rígidos. Los programadores gastan la mayoría de su tiempo corrigiendo sus errores. Los programadores prefieren escribir sus módulos. Cada programador tiene sus propios programas  Elevado coste de actualización. Deficiencias en la documentación. Introducción a la programación estructurada23

24 Previsiones futuras en los programas. Prever el aumento de datos y estructuras Cambios en la organización de la información. Cambios debido preferentemente a la modernización de los documentos y sus formatos. Sustitución, ampliación o reducción en el sistema de procesos de datos. Introducción a la programación estructurada24

25 Consideraciones al diseñar programas Correcto/fiel. Producir resultados requeridos. Legible. Debe ser entendido por cualquier programador. Modificable. Su estructura debe permitir modificaciones. Depurable. Debe ser fácil la localización y corrección de errores. Introducción a la programación estructurada25

26 Concepto de Módulo Esta constituido por una o varias instrucciones físicamente contiguas lógicamente encadenadas, las cuales se pueden referenciar mediante un nombre y pueden ser llamadas desde diferentes puntos de un programa. Un modulo puede ser un programa, una función, una subrutina(procedimiento). Introducción a la programación estructurada26

27 Programación modular Descomponer un programa en un número pequeño de abstracciones coherentes que pertenecen al dominio del problema y enmascaran la complejidad interna. Método de diseño que tiende a dividir el problema, de forma lógica, en partes perfectamente diferenciadas que pueden ser analizadas, programadas y puesta a punto independientemente. Introducción a la programación estructurada27

28 Ventajas de la programación modular Es más fácil de escribir y depurar. Fácil mantener y modificar. Fácil control de la programación. Posibilita el uso repetitivo de las rutinas en el mismo o en diferentes programas. Introducción a la programación estructurada28

29 Programación estructurada Técnica de construcción de programas que utilizan al máximo los recursos del lenguaje, limita el conjunto de estructuras aplicables a leer y presenta una serie de reglas que coordinan adecuadamente el desarrollo de las diferentes fases de la programación. Estructuras básicas de control. Recursos abstractos Diseño descendente Introducción a la programación estructurada29

30 Estructuras básicas de control El teorema de la estructura(Bohm y Jacopini 1966) establece que un programa propio puede ser escrito utilizando solamente las siguientes estructuras lógicas de control: secuencia, selección e iteración. Un programa se define como propio si cumple con los dos requerimientos siguientes: Tiene exactamente una entrada y una salida para control del programa. Existen caminos seguibles desde la entrada hasta la salida que conducen por cada parte del programa, es decir, no existen lazos infinitos ni instrucciones que no se ejecutan Introducción a la programación estructurada30

31 Recursos abstractos Diseñar o concebir un problema en términos abstractos consiste en no tener en cuenta la máquina que lo va a resolver así como el lenguaje de programación que se va a utilizar. Ejemplo : El concepto de variable implica una abstracción cuando se da un nombre a una operación determinada, y se utiliza considerando lo que hace pero sin preocuparnos de cómo lo hace. Introducción a la programación estructurada31

32 Metodología descendente Consiste en establecer una serie de niveles de menor o mayor complejidad que den solución al problema. Un programa estructurado tiene una representación en forma de árbol. El diseño se basa en la realización de diferentes niveles. Introducción a la programación estructurada32

33 Diseño de programas estructurados. La realización del diseño estructurado de un programa se basa en la aplicación de los siguientes conceptos: Ir de lo general a lo particular, descendiendo en la estructura del programa y en su nivel de detalle. De la definición inicial del problema se pasa a un esquema de algoritmo descrito en pseudocódigo. Independencia inicial del lenguaje. Diseño por niveles. Verificar en cada nivel el esquema correcto. Finalizar con un trabajo de recomposición del algoritmo completo. Introducción a la programación estructurada33

34 Ejemplo de programa con GOTO 10CLS 20A=10 30INPUT B 40IF B=A THEN GOTO 50 ELSE GOTO 70 50PRINT “A Y B SON IGUALES” 60GOTO 100 70IF A>B THEN GOTO 80 ELSE GOTO 90 80B=B+1; GOTO 40 90B=B-1; GOTO 40 100END Introducción a la programación estructurada34

35 Ejemplo de programa sin GOTO PROGRAM NUMEROSIGUALES BEGIN CLEARSCREEN; A:=10; INPUT B; REPEAT IF B=A THEN PRINT “A Y B SON IGUALES” ELSEREDUCEDIFERENCIA(A,B); UNTIL B=A; END; Introducción a la programación estructurada35

36 PROCEDURE REDUCEDIFERENCIA(A,B); BEGIN IF A>B THEN B:= B+1 ELSE B:= B-1 END Introducción a la programación estructurada36

37 Ventajas de la programación estructurada. Los programas son más fáciles de entender Reducción del esfuerzo en las pruebas. Reducción de los costos de mantenimiento. Programas más sencillos y más rápidos Aumento de la productividad del programador Los programas quedan mejor documentados internamente. Introducción a la programación estructurada37

38 RELACIÓN HISTÓRICA DE LAS PRINCIPALES METODOLOGÍAS 1968 Conceptos sobre la programación estructurada de DIJKSTRA 1974 Técnicas de programación estructurada de WARNIER y JACKSON 1975 Primeros conceptos sobre diseño estructurado de MYERS y YOURDON 1978 Análisis estructurado: DEMARCO y WEINBERG 1985 Análisis y Diseño estructurado para sistemas de tiempo real de WARD y MELLOR 1987 Análisis y Diseño estructurado para sistemas de tiempo real HATLEY y PIRKBAY Introducción a la programación estructurada38

39 Referencias Metodología de la programación estructurada, Joyanes, Luis, Editorial McGraw Hill, 1993. Colaboradores de Wikipedia. Programación estructurada [en línea]. Wikipedia, La enciclopedia libre, 2009 [fecha de consulta: 30 de septiembre del 2009]. Disponible en.http://es.wikipedia.org/w/index.php?title=Programaci%C 3%B3n_estructurada&oldid=30205148 Colaboradores de Wikipedia. Vector (informática) [en línea]. Wikipedia, La enciclopedia libre, 2009 [fecha de consulta: 2 de octubre del 2009]. Disponible en.http://es.wikipedia.org/w/index.php?title=Vector_(infor m%C3%A1tica)&oldid=30249361 Introducción a la programación estructurada39


Descargar ppt "Introducción al curso de programación estructurada. 1Introducción a la programación estructurada."

Presentaciones similares


Anuncios Google