En
la actualidad estamos tan acostumbrados a trabajar con ordenadores que
nos parece lo más sencillo del mundo. Realmente la mayoría de las
personas conocen la tecnología, la utilizan para su beneficio, pero no
suelen preguntarse qué hay detrás de todo esto.
La historia de la computación es realmente interesante, hemos pasado de esto:
a esto:
Visualmente
la diferencia es abismal, hemos logrado concentrar en un aparatito mil
veces menos más funciones y más potencia, pero esta vez vamos a
centrarnos en el interior. Sin dudas uno de los más grandes logros en la
computación es la programación, la comunicación entre el hombre y la
máquina.
¿Qué es un lenguaje de programación?
Para
que el ordenador entienda nuestras instrucciones necesita recibirlas en
código máquina, que consiste en cadenas de 0 y 1. Para el ser humano es
realmente complicado trabajar con ese código, y por eso se crearon
“traductores” que transformaban palabras en código máquina. Estos
traductores se fueron perfeccionando hasta llegar a los lenguajes de
programación actuales.
Existen
diferentes tipos de lenguajes y diferentes clasificaciones,por
ejemplo: según su nivel (alto o bajo), según la forma de ejecución
(compilados o interpretados) o según su paradigma. Estas clasificaciones
no suponen que alguno sea mejor o peor, simplemente son diferencias que
tienen entre ellos. Analicemos un poco los principales lenguajes
actuales.
- Java: Lenguaje de alto nivel. Según su paradigma es orientado a objetos, lo que le proporciona independencia a sus módulos. La peculiaridad de este lenguaje es que no es compilado en un código fuente sino en un bytecode que contiene un programa ejecutable. Esto permite que pueda correr en cualquier plataforma ("write once, run anywhere").
- C: Creado para desarrollar Sistemas Operativos, Unix principalmente. Su paradigma es imperativo por procedimientos. Está disponible para más plataformas que cualquier otro lenguaje
- Phyton: Un lenguaje moderno, orientado a objetos y de código abierto. Su código no necesita ser compilado, por lo que ahorra mucho tiempo.
- C#: Orientado a objeto.Específico para el desarrollo de aplicaciones. Es una mejora respecto a sus predecesores C y C++. Tiene una librería bien diseñada y muy completa.
- C++: Mejora las características de C. Se le otorga independencia haciéndolo orientado a objetos. Gran potencia en la programación de alto nivel, pero con características que le permiten programar a alto nivel.
¿Cómo interpretan las máquinas a estos lenguajes?
En la mayoría de los lenguajes el modelo de interpretación es algo como esto:
En
el caso de Internet este modelo es diferente, puesto que para devolver
un programa compilado necesitaría saber detalles de cada máquina como el
Sistema Operativo, por eso se envía un código intermedio que es
traducido por el navegador, que es, al final, el compilador.
Fuentes:
http://catedraprogramacion. foroactivos.net/t83- definicion-de-lenguaje-de- programacion-tipos-ejemplos
Wikipedia
Imágenes tomadas de Google Imágenes.