Sie sind auf Seite 1von 23

Fundamentos de Programacin

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


El proceso de elaboracin de programas puede ser tan simple o complejo como el problema mismo a resolver. Existen varias metodologas y tcnicas que ayudan a los programadores generar programas de una manera ms precisa y productiva. Aunque en esencia la programacin es un proceso creativo en sus inicios se le consideraba un arte ms que una ciencia-, se pueden definir fases o etapas que todos los programadores deben seguir para desarrollar programas de una forma ms eficiente. La adopcin de una metodologa de programacin proporciona mltiples beneficios a los programadores:
Un proceso definido y eficiente. Facilita la tarea de creacin, revisin y depuracin de programas. Un proceso repetible.

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.

Proceso de elaboracin de un programa Paso 2. Anlisis del problema

Qu debe hacer el programa?


Consiste en detallar las partes que intervienen en el problema de manera que se pueda proponer un modelo de solucin. Puede estar basado en los datos que maneja el sistema y la manera como fluyen por l. Se describe como una caja negra. El resultado pueden ser diagramas o bosquejos que muestren el flujo de informacin y las funciones que desempean. Tambin puede ser una descripcin de cmo se propone que funcione el sistema o programa, Indicando: entradas, salidas y proceso a realizar.

Proceso de elaboracin de un programa Paso 3. Programacin (Algoritmos)

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

Proceso de elaboracin de un programa


Paso 5. Ejecucin y ajuste (pruebas)

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

Proceso de elaboracin de un programa Paso 6. Documentacin

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

Documentacin del usuario:


Destinada al usuario para ayudarlo a manejar el sistema, debe de estar libre de tecnicismos en lo posible.

11

Proceso de elaboracin de un programa Paso 7. Mantenimiento

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.

DEL texto.doc mov AC08 EE45... 1001 0101 0111 ...

Lenguaje Mquina: escrito en binario, slo la PC lo entiende. MQUINA


15

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

Lenguajes de alto nivel:


Son los ms usados por los programadores. Facilitan la programacin, son independientes de la computadora, son portables, tiempo de programacin ms corto, Se usan reglas sintcticas parecidas a los lenguajes humanos: READ, WRITE, OPEN,.., Programas ms econmicos. Se limitan en cuanto al uso de los recursos internos de la mquina, consumen ms recursos: memoria, son ms lentos cuanto de ms alto nivel son.

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

Ejemplos de Lenguajes de programacin


Ada FORTRAN ALGOL COBOL LISP ENSAMBLADOR BASIC PL/1 PASCAL C Visual Basic Delphi

MODULA LOGO DBASE SQL Java C++ C# Html JavaScripts Perl

A qu generacin pertenecen y cul es el nivel que manejan?


18

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

Modelo idealizado de una computadora,


Datos y programas residen en la memoria de la computadora.
23

Das könnte Ihnen auch gefallen