Vous êtes sur la page 1sur 5

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA UNAD

ESCUELA DE CIENCIAS BASICAS, TECNOLOGIA E INGENIERIA


CONTENIDO DIDCTICO DEL CURSO: 301304 INTRODUCCION A LA PROGRAMACION

CONCEPTOS GENERALES DE PROGRAMACIN

Es fundamental iniciar el curso de introduccin a la programacin, abordando


conceptos bsicos que tienen que ver con la utilizacin de un lenguaje de
programacin para disear soluciones a problemas de informacin.
Revisin de conceptos generales de programacin
Programacin: es un proceso mediante el cual se convierten especificaciones
generales de la solucin de un problema, en instrucciones que el computador
puede interpretar y que producen los resultados deseados (desarrollo de
software).
Programa: lista de instrucciones que el computador sigue para convertir datos en
informacin. Estas dependen del lenguaje de programacin que se utilice.
Un programa debe ser:
Confiable y funcional
Comprensible
Documentado
Fases para la creacin de un programa

Definicin del problema: clara y precisa


Anlisis del problema: requiere identificar
o Datos de salida (informacin que debe producir el programa)
o Datos de entrada (datos que debe suministrar el usuario para lograr
los resultados esperados
o Datos de proceso (frmulas necesarias para procesar los datos)
Diseo de la solucin: lista ordenada y cronolgica de los pasos a seguir
para lograr resultados (diagramas de flujo, pseudocdigo, etc.). Debe ser
simple, clara, precisa, exacta, tener un orden lgico e indicar su inicio y
final.
Codificacin: escribir la solucin del problema en un lenguaje de
programacin (traducir el diagrama de flujo o pseudocdigo en
instrucciones que puedan ser interpretadas por el computador)
Prueba y depuracin: ejecutar el software para identificar y eliminar los
errores (de sintaxis o de tipo lgico)
Documentacin: gua que facilita futuras modificaciones del software

Programacin estructurada: se caracteriza por organizar las instrucciones de


manera secuencial, de tal manera que es posible leer la codificacin desde el
U1

Pgina 1

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA UNAD


ESCUELA DE CIENCIAS BASICAS, TECNOLOGIA E INGENIERIA
CONTENIDO DIDCTICO DEL CURSO: 301304 INTRODUCCION A LA PROGRAMACION

inicio hasta el final en forma continua sin saltar de un lugar a otro, siguiendo el
camino lgico establecido por el programador.
En este paradigma de programacin se debe prestar especial atencin a la etapa
de diseo de la solucin, una vez establecidos los pasos secuenciales, la
codificacin es ms fcil.
Caractersticas: la estructura del programa se realiza de la manera ms clara y
precisa posible, para ello utiliza:
Secuencia: sucesin simple de operaciones
Seleccin: bifurcacin condicional de una o ms operaciones
Iteraccin: repeticin de tareas mientras se cumple una o ms condiciones
Ventajas:
Tiene una estructura clara y por ende una buena presentacin.
Es ms fcil de comprender
Facilita la revisin de la codificacin
Reduce el tiempo de prueba y depuracin
Programacin Procedural: es un tipo de programacin estructurada en donde el
cdigo se divide en porciones llamadas "procedimientos" o "funciones". Este tipo
de programas permite que una porcin de programa sea llamada varias veces sin
que tenga que volver a escribir todo el cdigo, simplemente se realiza el llamado a
la funcin o procedimiento que se requiere. Este tipo de programacin se basa en
subdividir un programa en piezas lgicas para reducir su complejidad segn el
principio de "divide y vencers".
Identacin: utilizacin de sangras (espacios) para facilitar la lectura del programa
puesto que muestra en forma grfica las relaciones entre las instrucciones.
Para aprovechar la identacin en un programa en C++ se sugiere:
Escribir en la misma columna los indicadores de inicio y fin de cada bloque
de sentencias
Utilizar diferentes sangras para indicar anidamientos de instrucciones
Escribir una instruccin por lnea
Lenguaje de Programacin C++
En 1980, se comenz a desarrollar el lenguaje C++, su autor fue B. Stroustrup.
Al comienzo era una extensin del lenguaje C que fue denominada C with clases,
sin embargo es considerado por muchos autores como un lenguaje diferente al C.
La evolucin de C++ ha continuado con la aparicin de Java, un lenguaje creado
simplificando algunas cosas de C++ y aadiendo otras, que se utiliza para realizar
aplicaciones en Internet.
U1

Pgina 2

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA UNAD


ESCUELA DE CIENCIAS BASICAS, TECNOLOGIA E INGENIERIA
CONTENIDO DIDCTICO DEL CURSO: 301304 INTRODUCCION A LA PROGRAMACION

El C++ es a la vez un lenguaje procedural (orientado a algoritmos) y orientado a


objetos. Como lenguaje procedural se asemeja al C y es compatible con l,
aunque ya se ha dicho que presenta ciertas ventajas. Como lenguaje orientado a
objetos, se basa en una filosofa completamente diferente, que exige del
programador un completo cambio de mentalidad. Las caractersticas propias de la
Programacin Orientada a Objetos (Object Oriented Programming, u OOP) de
C++ son modificaciones mayores que s cambian radicalmente su naturaleza.
Es de anotar, que para el curso se trabajar con el lenguaje de programacin C++,
utilizando los paradigmas de programacin estructurada y procedural.
Ambiente de C++
El lenguaje C++ requiere de tres partes: un ambiente de desarrollo de programas,
el lenguaje y la biblioteca estndar de C++. Para desarrollar un programa es
necesario abordar seis fases: edicin, preproceso, compilacin, enlace, carga y
ejecucin.
1. Edicin: requiere de un programa de edicin donde se escribe el cdigo
necesario, este archivo se conoce como Archivo fuente que se almacena en un
dispositivo secundario, por ejemplo el disco duro. La extensin del archivo
fuente puede ser .cpp, .cxx, .cc o .c. Existen mltiples editores para el lenguaje
C++, entre los ms conocidos estn Borland C++, DEV C++, Visual C++,
Falcon.
2. Preproceso: antes de compilar una codificacin de C++, un programa llamado
preprocesador ejecuta automticamente los comandos denominados directivas
del preprocesador, que indican ciertas rdenes necesarias que no son visibles
para el programador, pero que son necesarias para desarrollar una buena
compilacin.
3. Compilacin: el programador debe ejecutar el comando necesario,
dependiendo del entorno de desarrollo que utilice, para realizar la compilacin,
esto traduce el programa C++ a cdigo en lenguaje mquina, denominado
Cdigo objeto.
4. Enlace: un programa en C++ contiene referencias a funciones y datos ya
definidos en bibliotecas estndar o bibliotecas exclusivas creadas por
programadores para proyectos especficos, entonces la tarea del enlazador, es
conectar el cdigo objeto con el respectivo cdigo de las funciones que se
referencian.
5. Carga: corresponde a la fase en que el programa se carga en memoria, esta
accin la realiza el Cargador, tomando la imagen ejecutable del disco y
transfirindola a la memoria, junto con los componentes adicionales de las
bibliotecas que se utilizan en el programa.
6. Ejecucin: el computador ejecuta el programa y se pueden observan,
U1

Pgina 3

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA UNAD


ESCUELA DE CIENCIAS BASICAS, TECNOLOGIA E INGENIERIA
CONTENIDO DIDCTICO DEL CURSO: 301304 INTRODUCCION A LA PROGRAMACION

entonces, los resultados de las instrucciones que se han incluido en la


codificacin.
Si se presentan errores, por diversas razones, se mostrar un mensaje de error y
es necesario volver a la fase de edicin para interpretarlo y corregirlo.
Traductores de lenguaje
Para entender mejor el proceso de conversin, es necesario aclarar ciertos
trminos:

Programa fuente: es la codificacin escrita por el programador en un lenguaje


de alto nivel, contiene las sentencias del programa en un lenguaje de
programacin. Para que sea ejecutable debe ser traducido.
Compilador: es el programa que se encarga de traducir los programa fuentes
escritos en el lenguaje de alto nivel a lenguaje de mquina y adems
comprueba que las llamadas a las funciones de librera se realicen de manera
correcta.
Programa objeto: es el programa fuente traducido por el compilador a cdigo
mquina. Hay que recordar, que el programa an no es directamente
ejecutable en esta etapa.
Linker (montador o enlazador): Es el programa encargado de insertar al
programa objeto el cdigo mquina de las funciones de las libreras (archivos
de biblioteca) usadas en el programa y realizar el proceso de montaje, que
producir un programa ejecutable .exe. Las librerias son una coleccin de
cdigo (funciones) ya programado y traducido a cdigo mquina, listo para
utilizar en un programa y que facilita la labor del programador.

Programa Ejecutable: Traduccin completa a cdigo mquina,


realizada por el enlazador, del programa fuente y que ya es directamente
ejecutable.
Representacin de la compilacin y linkado.

Programa
fuente

Compilacin

Programa
objeto

Enlazador

Programa
ejecutable

FIGURA 1. Proceso de compilacin y linkado

U1

Pgina 4

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA UNAD


ESCUELA DE CIENCIAS BASICAS, TECNOLOGIA E INGENIERIA
CONTENIDO DIDCTICO DEL CURSO: 301304 INTRODUCCION A LA PROGRAMACION

De lo anterior se deduce que el cdigo escrito por el programador es el programa


fuente y para que ese programa se ejecute y cumpla el objetivo para el que fue
creado, debe pasar por los procesos de compilacin (programa objeto) y enlace
(programa ejecutable). Al realizar el programa fuente se deben tener cuenta que
las sentencias y sintaxis sean correctas, de lo contrario no se puede compilar.
Ampliar informacin consultando:
Deintel, Harvey M., Deintel, Paul J. Cmo programar en C++. Pags. 15 a 17.
Disponible en
http://books.google.es/books?id=CBhWani323wC&printsec=frontcover&dq=c%2B
%2B&hl=es&sa=X&ei=v1d7VJbqEoekNr2lgqAE&ved=0CEwQ6AEwBg#v=onepag
e&q=c%2B%2B&f=false

U1

Pgina 5