Sei sulla pagina 1di 3

Lenguaje de Programacin C++

Unidad I. Introduccin a la Programacin Orientada


a Objetos y al lenguaje C++

Objetivos:

Conocer brevemente los diferentes paradigmas de programacin.


Situar al lenguaje C++ dentro de los diferentes paradigmas y lenguajes
de programacin actuales.
Conocer la historia e importancia del lenguaje C++.
Comprender la diferencia entre compiladores e intrpretes.

1
Lenguaje de Programacin C++
Unidad I. Introduccin a la Programacin Orientada a Objetos
y al lenguaje C++

Compiladores/Interpretes

Como se mencionaba, un programa escrito en un lenguaje de alto nivel requiere de una


traduccin para que pueda ser entendido por una computadora. Hay dos maneras de realizar
esta traduccin y depende del lenguaje de programacin que estemos usando:

a) Intrprete, toma cada instruccin del cdigo fuente y la ejecuta


inmediatamente, y as sucesivamente hasta que termine la
ejecucin del programa.
b) Compilador, toma una a una las instrucciones del cdigo fuente
y las traduce a un cdigo que pueda entender la computadora. Al
terminar de traducir el cdigo fuente se genera un archivo
ejecutable. Posteriormente, se puede ejecutar el programa sin
tener que estar realizando ninguna traduccin, con las ventajas
que esto supone en velocidad

Tomemos como analoga de interpretar al hecho de que en una entrevista realizada en ingls
exista un traductor que nos va diciendo al trmino de cada frase el equivalente al espaol,
mientras que para compilar tomemos como analoga un libro que esta en ingls y se traduce al
espaol, pero no se hacen las entregas parciales, sino que se publica la traduccin hasta que
esta todo traducido.

Diferencias entre compilador e intrprete.

Compilador Intrprete
Genera un ejecutable No genera un ejecutable
El proceso de traduccin se realiza una sola El proceso de traduccin se realiza en cada
vez. ejecucin.
Una vez compilado el cdigo fuente puede El cdigo fuente es necesario para cada
mantenerse en secreto. ejecucin por lo que no puede estar en
secreto.
El ejecutable va dirigido a un CPU, sistema No hay ejecutable, por lo que siempre se
operativo, por lo que es necesario compilar en interpreta en cada computadora que se
cada plataforma. ejecuta.
La ejecucin es muy rpida debido a que el La ejecucin es ms lenta, ya que para cada
programa ya ha sido traducido a cdigo lnea se debe hacer la traduccin
mquina.
El programa compilado puede ser distribuido Se requiere el intrprete para ejecutar el
en base al mismo SO. programa.

2
Lenguaje de Programacin C++
Unidad I. Introduccin a la Programacin Orientada a Objetos
y al lenguaje C++

Nuestro curso es un claro ejemplo de lenguajes que requieren compilacin: C o C++. Ejemplos
de lenguajes de programacin que requieren de intrpretes son Python y PHP, estos son
ampliamente utilizados e igualmente interesantes para su estudio.

Tenemos el caso de Java que es un poco distinto de lo mencionado hasta ahora. Tiene dos
fases, en la primera se toma el programa fuente y se compila, pero el resultado es un archivo
.class (byte-code). Dicho archivo se distribuye a las diferentes plataformas y es interpretado
por Java Virtual Machine, es decir, toma cada lnea .class y la ejecuta en la computadora.

Para la mayor parte de los lenguajes ms populares, como es el caso de C++, hay una gran
cantidad de compiladores. Esto se debe principalmente a dos razones, la primera es que hay
mltiples formas de traducir un programa a lenguaje mquina y, segn como se haga, los
programas pueden ser ms o menos eficientes. La segunda razn es que los compiladores
deben adaptarse para las diferentes arquitecturas. Muchos compiladores se pueden conseguir
gratuitamente, otros sin embargo, son productos comerciales.

Compilador del curso:


GCC (GNU Compiler Collection) es un conjunto de compiladores
creados por el proyecto GNU y se distribuye bajo licencia GPL.
Originalmente significaba GNU C Compiler pero se extendi para
compilar C++, Fortran, ADA y otros. GNU C++ resalta debido a que
es software 100 % gratuito y es el compilador por defecto de la
mayora de las distribuciones de Linux, adems de que es portable
para la mayora de las plataformas y adopta los estndares oficiales de
C++. Por estas razones se ha decido utilizar este compilador.
Minimalist GNU for Windows (MinGW) es una implementacin de los
compiladores GCC que permite migrar la capacidad de este
compilador a entornos Windows.

Actividad a evaluar: participe en el foro de la unidad respecto a si


fuera a elegir un intrprete o un compilador. Cul utilizara? Por
qu?

Potrebbero piacerti anche