Lenguaje de programación

En esta entrada quiero abordar, el tema de lenguaje de programación claro que no de manera muy específica, sino un poco más conceptual. Para ello se puede definir aún lenguaje de programación como:

 “la herramienta que permite crear programas, aplicaciones que facilitan la vida al ser humano”.

La analogía perfecta para este concepto es la escritura, ya que la escritura es una herramienta (por llamarla así) que permite tener en diferentes idiomas (ingles, latín, francés, español, entre otros) grandes y pequeños escritos (libros, artículos, notas, entre otras) que permiten al ser humano ilustrar su día a día.

Y así como en la escritura existen diversos tipos de estilos o géneros (románticos, ficción, educativos, entre otros), lo hay también en los lenguajes de programación y se pueden clasificar en dos.

  1. De scripting, son todos esos lenguajes de programación que se ejecutan en tiempo de ejecución o al vuelo, es decir, a como se van escribiendo se van ejecutando (por llamarlo de algún modo).
  2. Compilados, son todos aquellos lenguajes de programación que se compilan, es decir, se tienen que instalar o dar doble clic para que se ejecute y requiere de muchos o varios requisitos para que puedan realizar sus tareas (como tener instalado algún framework, o librerías especializadas).

Siguiendo con la analogía un lenguaje de scripting sería como un articulo de una revista o blog, o pequeños versos de un poema, por que sus requisitos dependen de la revista o del blog al que se este escribiendo. Sin embargo los lenguajes compilados son como los libros impresos que una vez llevados a la editorial no puedes volver a editarlos sino hasta una segunda versión del mismo. Los tiempos de preparación en cada uno de los casos son mas cortos (para un articulo) y más largo (para un libro); claro que eso va también si eres un escritor nato, o habilidoso, si por el contrario estas empezando todo será un poquitin difícil.

En la actualidad, existen diversos lenguajes de programación y van desde la creación de aplicaciones para escritorios, web y dispositivos móviles, el primero y el último son de tendencia donde su escritura es compilada (en la mayoría de los casos) y el de en medio es de formato de articulo (scripting).

Existe una subcategoría dentro de los lenguajes de programación que permite clasificarlos en alto y bajo nivel, esto es debido a la concepción de los primeros lenguajes de programación, ya que en un inicio solo se podían escribir programas en lenguajes de bajo nivel donde se comunicaban directamente con la máquina y después fueron surgiendo los lenguajes de alto nivel, donde ya son un poco mas comprensible para el ser humano pero generan una serie de traducciones para que se puedan comunicar con el ordenador.

Entre estos lenguajes se tiene al lenguaje binario, el cual permitía o permite (por los que aún hablan ese idioma) comunicarse directamente con el computador; este es un lenguaje de bajo nivel. Se encuentra el lenguaje ensamblador en sus diferentes versiones que brinda al programador palabras claves para poderse comunicar con la PC pero aún sigue siendo complejo (aún que menos, que el binario).

Luego se tiene lenguajes como Fortran, Basic, Pascal, C, C/C++, Visual Basic, Java, C#, entre otros, que son lenguajes de alto nivel y compilados, es decir, una vez que se escribe el programa y se publica realizar una modificación y volver a distribuir sobre la misma aplicación es más difícil que generar una versión 2.0 del mismo.

Después vienen los lenguajes como Python, php, JavaScript, entre otros, que son de alto nivel, y de tipo scripting, es decir se puede notar lo que realizan desde el momento que se publican, es decir, es mas fácil editarlos, en el mismo código que generar una versión 2.0.

Existen lenguajes de scripting con ciertas propiedades que permite subcategorizarlos, por ejemplo, las marcas, un lenguaje de marcado como HTML, en cualquiera de sus versiones, permite en cierta manera establecer marcas dentro de un documento web pero de manera estática, se considera lenguaje por todo lo que puedes crear con el o por lo que puedes moldear, es de scripting porque, a medida que vas creando las marcas puedes ir visualizando o ejecutando como será el resultado final.

También están los que se ejecutan del lado del servidor web, estos son lenguajes de programación que por sus características requieren que el código fuente quede en el servidor web que se va a ejecutar, que funciones pueden realizar, las conexiones a la base de datos, guardar, actualizar o eliminar contenido en una base de datos. Un ejemplo de ello sería php, python entre otros.

Están los que se ejecutan del lado del cliente, son lenguajes de programación de la familia de scripting pero dada sus cualidades su código fuente se guarda en el servidor web pero su ejecución la realiza el cliente por ejemplo, las validaciones de que se escriba bien o de manera correcta un e-mail en una caja de texto, o de que se solo se acepten letras o números en determinadas cuadros de texto. Son acciones que permiten que se ejecuten en la máquina del cliente (regularmente el navegador web). Ejemplo de este lenguaje es JavaScript.