Fundamentos de Informática
Tema 3
Programación de Ordenadores
Contenidos
Introducción
Metodología de la programación.
Resolución de problemas con el ordenador.
Análisis de requerimientos.
Etapa de diseño.
Implementación, validación y mantenimiento.
Descripción de algoritmos.
Lenguaje algorítmico.
Pasos para diseñar un algoritmo sobre un problema.
Programación modular.
Programación estructurada.
Lenguajes de programación.
Elementos básicos de la programación.
Estructura de los programas.
Lenguajes de programación. Evolución.
Introducción
Para trabajar con un sistema informático nos hace falta un ordenador (Hardware) y unos programas (Software). Se aplican técnicas ingeniería a ambos: Arquitectura Comp. , Ingeniería de Software (incluye Metodología Programación)
Un programa se puede ver como la solución a un problema, en términos de una secuencia de pasos computacionales.
Programación: “Planificación y/o ejecución de una tarea".
Programación de ordenadores: Proceso de planificación de secuencias de las instrucciones para realizar una acción o tarea.
Existen metodologías que permiten que la programación sea los más eficaz en cuanto a desarrollo y mantenimiento.
Introducción
Los ordenadores ejecutan rápida y de forma precisa operaciones lógicas y matemáticas.
Son “tontos”: Sólo saben hacer lo que se les dice. Lo que no siempre es igual a lo que se les debe decir, por tanto, el programa ha de estar perfectamente definido (preciso, simple y sin ambigüedades).
Errores pequeños pueden provocar fallos graves.
Para resolver un problema con un programa, es necesario desmenuzar la solución, en pasos concretos, cortos y
perfectamente definidos.
Un algoritmo es una secuencia ordenada de pasos
claros, concretos, precisos, sin ambigüedades, que lleva a la solución genérica de un problema.
Metodología de la programación
Estudio de procedimientos y/o métodos para resolver
problemas con computadoras, independientemente de un lenguaje de programación concreto y del ordenador
donde se va a implementar.
Es fundamental que los programas cumplan:
Legibles: Comprensibles para cualquier programador.
Modificables: Su estructura debe permitir modificaciones.
Depurables: Debe ser fácil la localización y corrección de errores.
Metodología de la programación
•
Si no seguimos un método de programación riguroso:
–
Los programas son rígidos y difíciles de adaptar a nuevos requerimientos.
–
Los programadores gastan mucho tiempo corrigiendo sus errores.
–
La comunicación entre programadores es muy difícil.
–
Los programas y módulos son poco reusables.
Existen deficiencias en la documentación.
Resolución de problemas con el ordenador
Análisis de requerimientos Diseño
Implementación Validación
Mantenimiento
El ciclo de vida del Software
Análisis de requerimientos
Esta fase consta de dos partes orientadas a responder QUÉ es lo que hay que hacer:
1. Definición del problema: Identificar claramente que es lo que se quiere resolver.
2. Análisis del problema: se basa en identificar:
Entrada de datos: La fuente y los tipos de datos para las entradas. Listar variables y su tipo
Resultados: Destino y formato de salida (variables y tipo)
: Interacción entre datos y resultados.
Etapa de diseño
En esta fase resolvemos CÓMO se hace lo especificado en el análisis de requerimientos.
1. Obtener una solución (estructurar la información y los pasos )
Programar es tarea difícil (mezcla muchos procesos mentales) Descomponer el problema en varios más sencillos. con técnicas
“divide y vencerás”, diseño descendente o modular, … dividiendo el problema en subproblemas más sencillos.
2. Hacer un esquema de la solución, es decir, Idear y explicitar un algoritmo que describa la solución paso a paso.
El diseño del algoritmo debe ser independiente del lenguaje de programación en el que se vaya a programar.
En problemas sencillos, los dos pasos se reducen a uno solo
Implementación, validación y mantenimiento
Implementación: se pasa el diseño obtenido en la etapa anterior, a una descripción escrita en un
lenguaje de programación (un lenguaje que puede comprender el ordenador). Se implanta en un
ordenador, y se ejecuta.
Validación: es el proceso de identificar y eliminar errores.