Entrada destacada

Bienvenidos

Después de tanto tiempo dedicado a dejar correr la globalización a mi lado, he decidido meterme en la gran burbuja de la información global,...

Programación I - Intérpretes vs Compiladores


El lenguaje de programación que aprenderemos es Python. Python es un ejemplar de un lenguaje de alto nivel; otros ejemplos de lenguajes de alto nivel son C, C++, Perl y Java.
Como se puede deducir de la nomenclatura “lenguaje de alto nivel”, también existen lenguajes de bajo nivel, a los que también se califica como lenguajes de máquina o lenguajes ensambladores. A propósito, los computadores sólo ejecutan programas escritos en lenguajes de bajo nivel. Los programas de alto nivel tienen que traducirse antes de ejecutarse. Esta traducción lleva tiempo, lo cual es una pequeña desventaja de los lenguajes de alto nivel.
Aun así las ventajas son enormes. En primer lugar, la programación en lenguajes de alto nivel es mucho más fácil; escribir programas en un lenguaje de alto nivel toma menos tiempo, los programas son más cortos y más fáciles de leer, y es más probable que estos programas sean correctos. En segundo lugar, los lenguajes de alto nivel son portables, lo que significa que pueden ejecutarse en tipos diferentes de computadores sin modificación alguna o con pocas modificaciones.
Los programas escritos en lenguajes de bajo nivel sólo pueden ser ejecutarse en un tipo de computador y deben reescribirse para ejecutarlos en otro.
Debido a estas ventajas, casi todos los programa se escriben en un lenguaje de alto nivel. Los lenguajes de bajo nivel sólo se usan para unas pocas aplicaciones especiales.
Hay dos tipos de programas que traducen lenguajes de alto nivel a lenguajes
de bajo nivel: intérpretes y compiladores. Un intérprete lee un programa de alto nivel y lo ejecuta, lo que significa que lleva a cabo lo que indica el programa.
Traduce el programa poco a poco, leyendo y ejecutando cada comando.

CODIGO FUENTE ----> INTERPRETE ---> SALIDA

Un compilador lee el programa y lo traduce todo al mismo tiempo, antes de ejecutar cualquiera de las instrucciones. En este caso, al programa de alto nivel se le llama el código fuente, y al programa traducido el código de objeto o el código ejecutable. Una vez compilado el programa, puede ejecutarlo repetidamente sin volver a traducirlo.

CODIGO FUENTE -> COMPILADOR -> CODIGO OBJETO -> EJECUTOR -> SALIDA

Python se considera como lenguaje interpretado porque los programas de Python se ejecutan por medio de un intérprete. Existen dos maneras de usar el intérprete: modo de comando y modo de guión o archivo. En modo de comando se escriben sentencias en el lenguaje Python y el intérprete muestra el resultado.

$ python
Python 1.5.2 (#1, Feb 1 2000, 16:32:16)
Copyright 1991-1995 Stichting Mathematish Centrum, Amsterdam
>>> print 1 + 1
2

La primera línea de este ejemplo es el comando que pone en marcha el intérprete Python.
Las dos líneas siguientes son mensajes del intérprete.
La tercera línea comienza con >>>, que es la invitación del intérprete para indicar que está listo (es el PROMPT).
Escribimos print 1 + 1 y el intérprete contestó 2.

Alternativamente, se puede escribir el programa en un archivo y usar el intérprete para ejecutar el contenido de dicho archivo. El archivo se llama, en este caso, un guión. Por ejemplo, en un editor de texto se puede crear un archivo programa_1.py que contenga esta línea:

print 1 + 1

Por acuerdo unánime, los archivos que contienen programas de Python tienen nombres que terminan con la extensión .py.
Para ejecutar el programa, se le tiene que indicar el nombre del guión (archivo) al intérprete.

$ python programa_1.py
2

En otros entornos de desarrollo los detalles de la ejecución de programas pueden ser diferentes. Además, la mayoría de programas son más interesantes que el mencionado.
La línea de comando es muy apropiada para el desarrollo de programas y para pruebas rápidas porque se pueden teclear las instrucciones de Python y se pueden ejecutar inmediatamente. Una vez que un programa está completo, puede guardarse en un archivo para ejecutarlo o modificarlo en el futuro.

¿QUÉ ES UN PROGRAMA?
Un programa es una secuencia de instrucciones que especifican cómo ejecutar una computación. La computación puede ser algo matemático, como solucionar un sistema de ecuaciones o determinar las raíces de un polinomio, pero también puede ser una computación simbólica, como buscar y reemplazar el texto de un documento o (aunque parezca raro) compilar un programa.
Las instrucciones (comandos, órdenes) tienen una apariencia diferente en lenguajes de programación diferentes, pero existen algunas funciones básicas que se presentan en casi todo lenguaje:

entrada: Recibir datos del teclado, o un archivo u otro aparato.
salida: Mostrar datos en el monitor o enviar datos a un archivo u otro aparato.
matemáticas: Ejecutar operaciones básicas de matemáticas como la adición y la multiplicación.
operación condicional: Probar la veracidad de alguna condición y ejecutar una secuencia de instrucciones apropiada.
repetición: Ejecutar alguna acción repetidas veces, normalmente con alguna variación.

Lo crea o no, eso es todo. Todos los programas que existen, por complicados que sean, están formulados exclusivamente con tales instrucciones. Así, una manera muy elemental de describir la programación es: El proceso de romper una tarea en tareas cada vez más pequeñas hasta que estas tareas sean suficientemente simples para ser ejecutadas con una de estas instrucciones simples.







No hay comentarios:

Publicar un comentario