Beruflich Dokumente
Kultur Dokumente
Introduccin
Temas
Proceso de ejecucin de un programa. Proceso de elaboracin de un programa. Lenguajes de programacin. Compiladores e intrpretes.
Proceso de elaboracin de un programa 1. 2. 3. 4. 5. 6. 7. Entender el problema. Hacer el anlisis del mismo. Programar el modelo de solucin
(Algoritmos en pseudocdigo o diagrama de flujo).
Codificarlo. (Lenguaje de Programacin) Cargarlo a la computadora para ejecucin y ajuste. Documentacin del programa. Mantenimiento a lo largo de su vida til.
Proceso de elaboracin de un programa Paso 1. Entender el problema Se trata de crear y mantener una idea clara, un mapa mental del problema propuesto y de ser capaz de abarcarlo de un solo vistazo. No se toman en cuenta detalles y particularidades operativas en primera instancia. La descripcin debe procurar incluir los aspectos ms relevantes a tomar en cuenta.
Programa: es un conjunto de declaraciones de estructuras de datos, seguidas de un conjunto de proposiciones (estructuras de control en general) que siguen ciertas reglas de construccin.
Estructuras de control: son las formas que existen para dirigir el flujo de acciones que el procesador efectuar sobre los datos. Estructuras de datos: son las diversas maneras en que se pueden organizar los datos para facilitar la representacin de objetos.
7
Proceso de elaboracin de un programa Paso 3. Programacin (Algoritmos) Cmo se logra hacer la tarea?
Se procede a convertir un sistema en programa de computadora escrito en seudocdigo o diagramas de flujo. Se aplican reglas y elementos estructurales bien definidos para construir los programas. Podemos imaginar este proceso como la creacin de la estructura de un edificio. NO se maneja un lenguaje de programacin en particular.
Proceso de elaboracin de un programa Paso 4. Codificacin Como resultado del paso anterior ya tenemos un modelo propuesto escrito en seudocdigo. La codificacin de un programa, consiste en traducir la solucin en seudocdigo a algn lenguaje de programacin, el cual pueda ser ejecutado en la computadora. Debemos de estar familiarizados con los elementos y forma de codificar del lenguaje que vayamos a utilizar y emplear el ms adecuado para cada tipo de problemtica. Se realiza una documentacin interna del cdigo.
Algunos autores hacen la distincin entre programar y codificar, para diferenciar claramente estas etapas.
9
Una vez codificado el programa y compilado, se puede ejecutar y probar en la computadora. Pueden darse los siguiente errores:
Error de sintaxis o de compilacin: se refiere a errores en el uso del lenguaje de programacin. Errores de ejecucin: al momento de correr el programa se pueden dar divisiones por cero, races de nmeros negativos, etc. El programa se detiene generalmente. Errores de lgica de programacin: son ms graves, pues indican que no se encontr una solucin adecuada al problema y el programa no obtiene lo que se esperaba de l. El algoritmo no esta bien diseado.
Se recomienda dedicar ms tiempo a las etapas de anlisis y programacin para tener menos problemas en la etapa de ajuste y depuracin.
10
Documentacin tcnica:
Describen cuestiones tcnicas del lenguaje para facilitar su comprensin y actualizacin en el futuro. Es la recopilacin del trabajo desarrollado en las etapas anteriores. Est enfocado al programador
11
Cuando el sistema tendr un uso prolongado, lo ms probable es que requiera revisiones y adecuaciones para satisfacer las necesidades cambiantes de los usuarios. Un buen programa es:
Claro, flexible, admite cambios y mejoras posteriores, es adaptable y robusto.
12
Lenguajes de Programacin
El Software y los lenguajes de programacin
Las operaciones que debe realizar la computadora (el hardware) deben ser especificadas mediante una lista o secuencia de instrucciones llamadas Programas (Software). Para el desarrollo de sistemas o programas es necesario el uso de lenguajes de programacin, los cuales tienen elementos gramaticales y sintcticos para describir las instrucciones permitidas en la computadora. Los programadores pueden utilizar diferentes lenguajes de programacin.
13
Lenguajes de programacin Lenguaje de programacin: Cualquier lenguaje artificial utilizado para definir una secuencia de instrucciones para su procesamiento por un ordenador. Vistos a muy bajo nivel, los microprocesadores procesan exclusivamente seales electrnicas binarias.
Dar una instruccin a un microprocesador supone en realidad enviar series de unos y ceros espaciadas en el tiempo de una forma determinada.
Esta secuencia de seales se denomina cdigo mquina. Existen herramientas que pueden traducir programas escritos en lenguajes ms cercanos al lenguaje humano al cdigo mquina.
14
Lenguajes de Programacin
Clasificacin: Lenguajes mquina, lenguajes de Bajo y Alto Nivel
Es de ALTO NIVEL porque es racional, estructurado y fcil de aprender y entender por los humanos. Alto nivel quiere decir prximo al lenguaje humano.
Borra el archivo...
HUMANO
Es de BAJO NIVEL porque permite trabajar con bits, registros de la C.P.U. y posiciones de memoria. Bajo nivel = prximo al lenguaje mquina.
Lenguajes de Programacin
Clasificacin -> Ventajas e inconvenientes
Lenguaje mquina:
Cadenas de ceros y unos. Se ejecutan a Gran Velocidad y son muy compactos. Dificultad en la codificacin, poco fiables, dificultad para probarlos y dejarlos libres de errores, se ejecutan slo en el mismo tipo de procesador (dependen del hardware).
Bajo nivel:
Usan nemotcnicos: add, sub, div,, El lenguaje Ensamblador. Un poco ms sencillo de codificar que los lenguajes mquina. Son Veloces. Uso para dispositivos de control de procesos o electrnicos. Dependen tambin del hardware, Requieren Mucho conocimiento del equipo.
16
Lenguajes de Programacin
Clasificacin -> Ventajas e inconvenientes
Los lenguajes de 4 y 5 generacin son ms parecidos a como se expresan los humanos: imgenes o smbolos, frases en lenguaje natural, etc.
17
Lenguajes de Programacin
Programas
Niklaus Wirth inventor de Pascal y Modula-2 Titul uno de sus libros como : Algoritmos + Estructuras de Datos = Programas. Para la generacin de programas se requieren de otros sistemas de base como son:
Editores Traductores Compiladores e Intrpretes Cargadores Sistemas Operativos.
19
Lenguajes de Programacin
Traductores de lenguajes Son programas que traducen el cdigo fuente de un programa (Lenguaje de Alto Nivel) a cdigo mquina. Lenguajes Interpretados Las instrucciones se traducen y ejecutan lnea a lnea por un intrprete y si se detecta un error en el cdigo, en ese punto se detiene la ejecucin del programa. Lenguajes Compilados Se revisa previamente todo el cdigo mediante un Compilador, y cuando est libre de errores produce un archivo objeto y despus un ejecutable.
20
Lenguajes de Programacin
Generacin de un programa
CDIGO MQUINA
Lenguaje Programacin
#include <stdio.h> main() { int i,j,k; i=4; j=3; for (i=0; i<100; i++) { k= i*i; printf(cuadrado de %d = %d, i, K); } exit(o); }
Compilador
CDIGO FUENTE
21
Lenguajes de Programacin
Generacin de un programa -> Compilacin
COMPILAR
CDIGO FUENTE CDIGO OBJETO
ENLAZAR
PROGRAMA EJECUTABLE
CDIGO FUENTE: es el programa que nosotros escribimos en un editor. CDIGO OBJETO: es el programa fuente pero traducido a lenguaje mquina (sucesin de ceros y unos). PROGRAMA EJECUTABLE: es el programa objeto ms las libreras del lenguaje, (en lenguaje mquina) se graba con la extensin .EXE. Y no necesita el programa que hemos utilizado para crearlo, para poder ejecutarlo. COMPILAR: es un proceso en el que se revisa que el programa este correctamente escrito y se traduce a cdigo objeto. ENLAZAR: es el proceso en el que se agregan las utileras y libreras para armar un slo programa que pueda ser ejecutado.
22
Lenguajes de Programacin
Generacin de un programa-> Flujo de datos y control