Conceptos Y Técnicas Básicas En Programación
1. Introducción 2. Datos y expresiones. Especificación de algoritmos 3. Estructuras algorítmicas básicas 4. Iteración y recursión 5. Iteración y recursión sobre secuencias 6. Iteración y recursión sobre tablas
UNIVERSIDAD DE CANTABRIA
DEPARTAMENTO DE MATEMÁTICAS, ESTADÍSTICA Y COMPUTACIÓN 4
© Michael González Harbour y José LuisMontaña 30/sept/09
1
Notas:
1. Introducción
UNIVERSIDAD DE CANTABRIA
• Programas, y lenguajes. Necesidad de la programación modular. Ciclo de vida de los programas. Concepto de algoritmo. Noción de proceso. Variables. Estado de un programa. 2. Datos y expresiones. Especificación de algoritmos 3. Estructuras algorítmicas básicas 4. Iteración y recursión 5. Iteración y recursión sobresecuencias 6. Iteración y recursión sobre tablas
DEPARTAMENTO DE MATEMÁTICAS, ESTADÍSTICA Y COMPUTACIÓN
© Michael González Harbour y José Luis Montaña 30/sept/09
2
Programas y lenguajes
UNIVERSIDAD DE CANTABRIA
Un programa es un conjunto completo de instrucciones que el computador es capaz de ejecutar con el fin de tratar información Se escribe en un lenguaje que el computadorentienda • lenguaje de programación • generalmente es necesario un proceso de traducción automática (compilación)
DEPARTAMENTO DE MATEMÁTICAS, ESTADÍSTICA Y COMPUTACIÓN
© Michael González Harbour y José Luis Montaña 30/sept/09
3
Necesidad de la programación modular
UNIVERSIDAD DE CANTABRIA
Los programas pueden llegar a ser muy complejos y para poder gestionar esta complejidad sedividen en módulos • independientes entre sí • llamados clases en Java Un módulo de programa contiene datos y operaciones para manipular datos Cada una de esas operaciones representa un algoritmo
DEPARTAMENTO DE MATEMÁTICAS, ESTADÍSTICA Y COMPUTACIÓN
© Michael González Harbour y José Luis Montaña 30/sept/09
4
El ciclo de vida de un programa
Requerimientos Informales Documento deRequerimientos Documento de Especificaciones Arquitectura del Programa
UNIVERSIDAD DE CANTABRIA
Análisis de Requerimientos
Análisis de Especificaciones
Diseño de la Arquitectura
Integración y pruebas de sistema
Pruebas de módulo
Codificación
Diseño Detallado
Programa final
Módulos de Programa Probados
Módulos de Programa
Diseño de cada Módulo (pseudocódigo)DEPARTAMENTO DE MATEMÁTICAS, ESTADÍSTICA Y COMPUTACIÓN
© Michael González Harbour y José Luis Montaña 30/sept/09
5
Coste de los sistemas informáticos
UNIVERSIDAD DE CANTABRIA
La mayor parte del gasto en sist. informáticos es el software Los errores software tienen un alto coste: efecto y corrección
Coste relativo de corregir un error 100 80 % del coste total 60 40 20 0 1955 Año Hardware 10040 16 6.3 2.5 0
Software
1970
1995
Ana Dis Cod Int Pru Man Etapa en que se detecta el error
DEPARTAMENTO DE MATEMÁTICAS, ESTADÍSTICA Y COMPUTACIÓN
© Michael González Harbour y José Luis Montaña 30/sept/09
6
Distribución del Esfuerzo de desarrollo
UNIVERSIDAD DE CANTABRIA
análisis y diseño codificación pruebas e integración
DEPARTAMENTO DE MATEMÁTICAS, ESTADÍSTICAY COMPUTACIÓN
© Michael González Harbour y José Luis Montaña 30/sept/09
7
Concepto de algoritmo
Un algoritmo es: • una secuencia finita de instrucciones, • cada una de ellas con un claro significado, • que puede ser realizada con un esfuerzo finito • y en un tiempo finito
UNIVERSIDAD DE CANTABRIA
El algoritmo se diseña en la etapa de diseño detallado y se corresponde habitualmentecon el nivel de operación o método Los programas se componen habitualmente de muchas clases que contienen algoritmos, junto con datos utilizados por ellos • los datos y algoritmos relacionados entre sí se encapsulan en la misma clase
DEPARTAMENTO DE MATEMÁTICAS, ESTADÍSTICA Y COMPUTACIÓN
© Michael González Harbour y José Luis Montaña 30/sept/09
8
Noción de proceso
Un proceso es la...
Regístrate para leer el documento completo.