02 Python Tema2 Parte1 v4 Apuntes
02 Python Tema2 Parte1 v4 Apuntes
02 Python Tema2 Parte1 v4 Apuntes
Conceptos
básicos de
programación
Qué es un lenguaje de
programación
1
IBM SkillsBuild | Introducción a Python
Índice
Introducción 3
Generaciones 6
Traductores 7
Intérpretes 7
Compiladores 7
Intermedios 7
2
IBM SkillsBuild | Introducción a Python
3
IBM SkillsBuild | Introducción a Python
Introducción
En los últimos años los lenguajes de programación han ido
evolucionado en el desarrollo de sistemas o software, con el
objetivo principal de facilitar al usuario las actividades que
realiza día con día; por tal motivo, como programador, es
importante conocer los conceptos básicos de programación,
los tipos de lenguajes que se utilizan para el desarrollo y su
funcionamiento para la interpretación de algoritmos, así
como para dar solución a los problemas que pudieran
presentarse.
4
IBM SkillsBuild | Introducción a Python
5
IBM SkillsBuild | Introducción a Python
6
IBM SkillsBuild | Introducción a Python
Generaciones Traductores
• Primera generación: lenguaje máquina.
El traductor es una herramienta esencial en la
• Segunda generación: se crearon los primeros
programación o desarrollo, encargándose de convertir
lenguajes ensambladores.
código fuente de un determinado lenguaje de
• Tercera generación: se crean los primeros
programación a código máquina que puede «entender»
lenguajes de alto nivel. Ej. C#, Pascal, Cobol
directamente el ordenador.
• Cuarta generación: son los lenguajes capaces de
generar código por sí solos, son los llamados RAD. De acuerdo al modo en que llevan a cabo el proceso de
Son herramientas que permiten construir conversión, los traductores se dividen en dos conjuntos:
aplicaciones sencillas combinando piezas intérpretes y compiladores.
prefabricadas (librerías). Algunos proponen
reservar el nombre de cuarta generación para la
programación orientada a objetos, por sus siglas, Intérpretes
POO. Un intérprete es un traductor que ejecuta las líneas de
• Quinta generación: aquí se encuentran los código que conforman un programa una a una y
lenguajes orientados a la inteligencia artificial. directamente. Es un programa que va leyendo el código
fuente de otro programa y lo va ejecutando según lo lee.
cuando se solicite. Por tanto, el programa realizado con sentencia, a código máquina, creando un programa objeto
un lenguaje de programación traducido por un intérprete o código objeto.
siempre necesitará a éste para poder ejecutarse. No existe
Sin embargo, para crear el programa final, autoejecutable,
independencia entre la fase de traducción y ejecución.
será necesario un proceso adicional: el enlazado o
Cada vez que el programa necesite ejecutarse, el montaje (realizado por el programa montador, enlazador
traductor tendrá que convertir el código fuente a código o linker).
máquina (interpretar). Esta característica hace que, por
El resultado final, será un programa autoejecutable que
regla general, los lenguajes que usan este tipo de
no necesitará ninguna herramienta adicional para hacerlo.
traductor ofrezcan un menor rendimiento.
Simplemente le indicaremos que se ejecute cuando lo
En contrapartida, ofrecen un mejor entorno de deseemos y así lo hará.
programación, depuración y mantenimiento que el otro
conjunto de traductores: los compiladores.
Intermedios
Existen otros traductores que producen un código
intermedio entre el código fuente y el código máquina.
Son, por tanto, una mezcla de interpretados y compilados.
Compiladores
Los traductores de tipo compilador convierten el código En el lenguaje Java por ejemplo, se genera un recurso
bytecode: código precompilado que necesita
fuente de un programa en código máquina, generando en
interpretarse por la JVM o máquina virtual de Java para
el camino un recurso adicional (un ejecutable) que será el ejecutarse.
que utilizaremos para ejecutar el programa.
8
IBM SkillsBuild | Introducción a Python