Вы находитесь на странице: 1из 9

Introducción a la Programación – Capítulo 1 1

I. Introducción a la Programación

Programa: Comúnmente un programa suele definirse como un conjunto de


instrucciones ordenadas en forma lógica.

Si nos referimos a un programa informático, se define de igual manera como


un conjunto de instrucciones que una vez ejecutadas realizarán una o varias tareas
en una computadora. Sin programas, estas máquinas no pueden funcionar. Al
conjunto general de programas, se le denomina software, que más genéricamente
se refiere al equipamiento lógico o soporte lógico de una computadora digital.

Los programadores son los profesionales encargados de escribir el código fuente


de cada uno de estos programas.

Tipo de Programa (Fuente, Objeto)

Un programa fuente es aquel que nos permite escribir un algoritmo mediante un


lenguaje formal. Es decir, entendible por el ser humano. Razón por la cual al código
desarrollado se le llama código fuente.

El concepto de "Programa Fuente" se relaciona de forma directa con los lenguajes


de programación y las aplicaciones creadas, porque precisamente "Programa
Fuente" describe el argumento escrito por el programador que da inicio al desarrollo
de su obra de software.
De este modo, el paso siguiente está dado por la Compilación de lo escrito, de tal
forma que la máquina sea capaz de entenderlo y "correrlo", dando lugar a un archivo
ejecutable

El lenguaje que utiliza el programador para diseñar los pasos a ejecutar por la
computadora, para que sea entendible y más fácil de utilizar por él, es muy similar
al que utilizamos cotidianamente (lenguaje de alto nivel) y que es independiente del
hardware en el que se va a utilizar.

Pero para que una computadora pueda funcionar, las instrucciones a seguir
deben ser dadas en un lenguaje binario (compuesto por 0 y 1) que pueda ser
interpretado y ejecutado por ésta, que es el lenguaje máquina.

De esta manera, el Programa Objeto es aquel programa que resulta de


la traducción del lenguaje fuente (lenguaje entendible por el ser humano) a un
lenguaje máquina, es decir a aquel que es inteligible por la computadora.

Un programa objeto es el resultado de traducir un programa fuente para obtener un


lenguaje comprensible por la máquina.

Licda. Cecilia G. de Beitia, MSc. Desarrollo Lógico y Algoritmos – I Semestre 2019


Introducción a la Programación – Capítulo 1 2

Procesadores de Lenguajes

Un procesador de lenguajes es el software que traduce el programa fuente escrito


en lenguaje de programación de alto nivel a código de máquina. Los procesadores
de lenguaje pueden ser compiladores o intérpretes.

Un compilador es un programa, suministrado por el fabricante del lenguaje, cuyo


objetivo es convertir el programa fuente en un programa objeto. El compilador
realiza las siguientes funciones:
 Traduce las instrucciones del programa fuente.
 Asigna áreas y direcciones de memoria.
 Suministra constantes y otros datos.
 Produce un diagnóstico de errores.
 Genera el programa objeto.

La compilación es, entonces, el proceso mediante el cual la computadora traduce


las instrucciones escritas por el programador (programa fuente) a instrucciones
escritas en el lenguaje propio de la máquina (programa objeto)

Programa Programa
COMPILADOR
fuente Objeto

Existen tantos compiladores como lenguajes hay; por ejemplo: compiladores para
C++, C, Visual Basic, Pascal, entre otros.

Todo programa debe ser traducido a programa objeto para que pueda ser ejecutado
por la computadora.

Un intérprete es un programa que va leyendo poco a poco el código que el


programador escribe y va traduciéndolo y ejecutándolo según se traduce. En estos
casos no hay una traducción completa, ya que no se genera un programa
completamente ejecutable. Éste permite al programador ejecutar interactivamente
las diferentes secciones del programa, en vez de esperar a que todo el programa
sea traducido y probado, como lo haría con un lenguaje compilado.

Programa fuente

INTÉRPRETE

Traducción y ejecución línea por línea

Licda. Cecilia G. de Beitia, MSc. Desarrollo Lógico y Algoritmos – I Semestre 2019


Introducción a la Programación – Capítulo 1 3

Lenguajes de Programación

Un lenguaje de programación es una notación constituida por símbolos y reglas


que permite escribir programas. Todo lenguaje de programación está compuesto
por su sintaxis (reglas) y su semántica (significado de los símbolos y las palabras
que utiliza). A través de los lenguajes de programación es posible establecer una
comunicación sistematizada y precisa con una computadora.

Tipos de Lenguajes (Absoluto, Simbólico)

El lenguaje simbólico es aquél en el cual las instrucciones o sentencias son


escritas con palabras similares a las de los lenguajes humanos. Están compuestos
por símbolos, letras y números.

Por ejemplo:

si (edad > 18)


imprimir “usted es mayor de edad”
sino
imprimir “lo siento, usted es menor de edad”
fin-si

Los lenguajes simbólicos están orientados al programador y presentan las


siguientes ventajas:
 Se entienden y escriben fácilmente.
 Disminuye la probabilidad de cometer errores.
 Escribir en lenguajes simbólicos toma menos tiempo.
 Son independientes de la plataforma y, por tanto, pueden usarse en distintas
plataformas.

Desventajas:
 Para que la máquina los entienda deben ser traducidos.
 Su tiempo de ejecución es mayor.

El lenguaje absoluto o de máquina es el lenguaje nativo de una unidad de


procesamiento central (CPU o procesador). Está compuesto por instrucciones que
la máquina entiende directamente y que se expresan en términos de la unidad de
memoria más pequeña: el bit (código binario 1 ó 0). En esencia, una instrucción es
una secuencia de bits que especifican una operación y las celdas de memoria
implicadas.

Licda. Cecilia G. de Beitia, MSc. Desarrollo Lógico y Algoritmos – I Semestre 2019


Introducción a la Programación – Capítulo 1 4

Un lenguaje orientado a la máquina presenta las siguientes ventajas:


 No necesita traducción.
 Se aprovecha toda la capacidad de la computadora (uso de la memoria).
 El tiempo de acceso es menor.

Desventajas:
 Es difícil de escribir y entender.
 Su escritura toma mucho tiempo.
 Dado que es un lenguaje expresado en unos y ceros, se corre un riesgo
grande de cometer errores.

Instrucciones: La instrucción es el elemento clave del equipo, ya que permite


indicar al procesador la acción que debe realizar. Las instrucciones a realizar se
indican en el archivo fuente y el equipo pasa de una instrucción a otra siguiendo las
instrucciones que se indican de arriba hacia abajo.

Una instrucción se compone, generalmente, de dos elementos:


 el operador: la acción que el procesador va a realizar
 el/los operando(s): uno o más datos en los cuales se realiza la operación

Datos: Cualquier clase de hechos u observación. Los datos simples los


clasificamos en:

 Numéricos
o Enteros: Cualquier número con dígitos del 0 al 9 con o signo, sin
puntación decimal.

o Reales: Cualquier número con dígitos del 0 al 9 con o sin signo,


incluyendo el punto decimal.

 Alfanuméricos
o Carácter: se define como una sola posición, llámese una letra, un
dígito o un símbolo especial. En C++, los caracteres se reconocen
porque están encerrados entre comillas simples o apóstrofos. Por
ejemplo: ‘a’, ‘*’, ‘6’, . . .

o Cadena: Conjunto de caracteres encerrados entre doble comillas. Por


ejemplo: “esto es una cadena”

 Lógicos: Es la representación de dos posibles valores (true, false).

Licda. Cecilia G. de Beitia, MSc. Desarrollo Lógico y Algoritmos – I Semestre 2019


Introducción a la Programación – Capítulo 1 5

Variables: Nombre que se le da al espacio de memoria destinado a contener un


valor y que cada vez que se ejecuta puede variar su contenido.

Constantes: Valores fijos que no cambian durante la ejecución de un programa.

Cabe señalar que si se tienen datos con cada uno de los tipos definidos, es
necesario tener variables que sean capaces de recibir su valor y por ende se pueden
manejar constantes con cada uno de estos tipos de datos.

Entrada: Alimentar al programa, con valores, para que se ejecuten las acciones
propuestas. La entrada de datos puede darse a través de:
 Lectura
o Teclado
o Pantalla
o Dispositivo magnético
o Lápiz óptico
o Mouse
o Huellas
o Voz, . . .

 Asignación: Dar un valor directamente. Por ejemplo b=5 En


este caso el valor de entrada para b, es directamente 5

 Cálculos: Por medio de una operación, una variable recibe un


valor con el que puede seguir trabajando más adelante. Por
ejemplo: b = raizcua(x) + m2. Esta operación permite que b
tenga un valor de entrada para seguir trabajando más adelante.
En este caso, tanto x como m deben recibir valores previos.

Salida: Mostrar o guardar los resultados obtenidos. La salida puede darse a través
de:
 Pantalla
 Papel
 Dispositivo magnético, . . .

Registro: Conjunto de datos tratados como una unidad, con un sentido específico.
Es decir, es la unión de varios elementos bajo una misma estructura.

Archivo: Conjunto de registros. En sí, son una estructura de información


relacionada, almacenada de forma permanente e independiente del programa que
la utiliza.

Licda. Cecilia G. de Beitia, MSc. Desarrollo Lógico y Algoritmos – I Semestre 2019


Introducción a la Programación – Capítulo 1 6

Base de Datos: Conjunto de archivos. Las bases de datos son una estructura
lógica en la cual se almacenan los datos y sirven para posteriormente resolver
consultas. La base de datos está compuesta por tablas o entidades, atributos y
relaciones.

Gestión de Base de Datos: Un manejador de base de datos es un motor de


software que se encarga de la administración y el funcionamiento de la base de
datos.

Etapas para la Resolución de Problemas por computadora, utilizando


Orientación a Objetos

1. Definición del Problema


Es el primer paso en la planeación de un proyecto de programación y consiste
en describir un enunciado breve del problema que se solucionará y de las
restricciones que existen en su resolución. Es importante subrayar los verbos
que encontramos, ya que estos nos indican la acción que debemos realizar.

2. Análisis y Diseño del Problema


El análisis del problema nos conduce al diseño detallado de la solución del
problema. Nos encontramos con tres puntos importantes:
 Salida (Saber qué es lo que quiero conseguir o hasta donde quiero
llegar).
 Entrada (Determinar con qué datos cuento para trabajar).
 Proceso (Cómo lo voy a hacer y sobre todo tener pendiente las
condiciones o restricciones que presenta el problema, si es que las
hay).

3. Programación
a. Representación de la lógica
La representación de la lógica no es más que la escritura de las
instrucciones que resuelven el problema, dadas en un orden lógico.
Esta representación puede darse, entre otros, por medio de:
i. Algoritmo
Solución paso a paso del problema dado, escribiendo las
instrucciones desde 1, definido como el inicio, hasta declarar el
fin del mismo. Se considera que un algoritmo es preciso
porque implica el orden de realización de cada uno de los
pasos; definido pues si se sigue dos veces se obtiene el mismo
resultado; y finito porque al tener un número determinado de
pasos, implica que debe tener por lo menos un final.

Licda. Cecilia G. de Beitia, MSc. Desarrollo Lógico y Algoritmos – I Semestre 2019


Introducción a la Programación – Capítulo 1 7

Por ejemplo:

1. Inicio
2. Leer a, b
3. C=a+b
4. Fin

ii. Diagrama de flujo


En este caso, la lógica se representa paso a paso utilizando
símbolos gráficos que nos indican las acciones a ejecutar. (El
estudiante interesado en trabajar con esta técnica, hable con el
profesor del curso)

b. Prueba de escritorio
Una prueba de escritorio es la comprobación lógica de un algoritmo.
Para desarrollar esta prueba, es necesario que usted tome la posición
del procesador de la computadora y realice lo siguiente:

Con datos de prueba, se seguirán cada uno de los pasos propuestos


en el algoritmo. No debe obviar ninguna de las instrucciones ni mucho
menos incluir lo que usted considera que es, recuerde que en este
momento es como si el computador ejecutara las acciones que se han
planteado.

Si esta prueba de escritorio genera resultados satisfactorios, quiere


decir que el algoritmo posee una lógica adecuada, en caso contrario
tendrá que corregir el algoritmo que ha presentado. Debe realizar
tantas pruebas de escritorio como sean necesarias, hasta cumplir con
todas las rutas que presente el problema y por supuesto que usted
esté satisfecho con el resultado.

c. Codificación
La codificación implica convertir el algoritmo resultante en un código
escrito en lenguaje de programación. El resultado de esta
codificación, se le denomina programa fuente.

Para lograr una codificación exitosa, es necesario que se respeten las


reglas del lenguaje a utilizar.

d. Compilación/Ejecución
Compilación. Una vez que el algoritmo ha sido convertido en un
programa fuente, es necesario traducirlo o convertirlo en un programa
objeto (compilarlo). Si luego de la compilación se presentan errores
(de sintaxis) en el programa fuente, estos se deben corregir para

Licda. Cecilia G. de Beitia, MSc. Desarrollo Lógico y Algoritmos – I Semestre 2019


Introducción a la Programación – Capítulo 1 8

volver a compilar. Este proceso se repite hasta que se tenga cero


errores en la compilación.

Ejecución. Consiste en el trabajo que realiza la computadora,


procesando cada una de las instrucciones que contiene el programa.
Debe emplearse una variedad de datos de entrada, conocidos en esta
fase como datos de prueba, para determinar si el programa tiene
errores. Esta variedad de datos de prueba debe incluir:
 Valores normales de entrada
 Valores extremos de entrada que comprueben los límites del
programa
 Valores que comprueben aspectos especiales del programa.

i. Tipos de Errores
Cuando se realizan las acciones de compilar/ejecutar, se
pueden presentar diferentes tipos de errores a los cuales se les
debe prestar especial atención antes de dar por terminado un
determinado programa. Estos tipos de errores son:

Errores de compilación: Estos errores son errores de sintaxis


que ocurren por el incumplimiento de las reglas sintácticas del
lenguaje como, por ejemplo, un comando especial mal escrito
o una instrucción incompleta. Puede darse además que las
variables que utilice el programador, no estén debidamente
declaradas o que las llamadas que haga a programas externos
no estén bien escritas y no pueda hacer el enlace
correspondiente.

El compilador despliega una lista de todos los errores


encontrados.

Es necesario que el programa tenga cero (0) errores para que


se genere el programa objeto correspondiente.

Errores de ejecución: Estos errores se producen por


instrucciones que la computadora comprende sintácticamente
pero que no puede ejecutar, por ejemplo, la división por cero o
el cálculo de raíces cuadradas con valores negativos.

En ambos casos, se detiene la ejecución del programa y se


imprime el correspondiente mensaje de error.
Errores de lógica: Consisten en resultados incorrectos
obtenidos por el programa. Es necesario revisar
completamente su programa, si es posible desde el algoritmo;

Licda. Cecilia G. de Beitia, MSc. Desarrollo Lógico y Algoritmos – I Semestre 2019


Introducción a la Programación – Capítulo 1 9

codificar, compilar y ejecutar nuevamente hasta que el


resultado sea satisfactorio.

4. Documentación
La documentación de un programa consta de las descripciones de los pasos
a seguir en el proceso de resolución de un problema. La importancia de la
documentación debe ser destacada por su decisiva influencia en el producto
final. Los programas deficientemente documentados son difíciles de leer,
más difíciles de depurar y casi imposibles de mantener y modificar.

Barraza, Meléndez, Krol, Velásquez: Introducción a la Programación Orientada a Objetos. Pearson/Prentice Hall.
http://teleformacion.edu.aytolacoruna.es/PASCAL/document/intro.htm
http://www.mastermagazine.info/termino/6394.php
http://www.mastermagazine.info/termino/6396.php

Licda. Cecilia G. de Beitia, MSc. Desarrollo Lógico y Algoritmos – I Semestre 2019

Вам также может понравиться