Lenguajes disponibles

C es un lenguaje de programación de propósito general desarrollado por Dennis Ritchie en torno a 1970. Inicialmente fue concebido para desarrollar sistemas operativos como Unix, ya que una de sus principales características es la eficiencia del código que se produce, al poder acceder a los recursos hardware a bajo nivel. Actualmente se utiliza para desarrollo de motores gráficos, sistemas operativos, compiladores, y cualquier otro elemento software que requiera de ciertos parámetros de eficiencia.

Es un lenguaje compilado (se generan archivos ejecutables), con un tipado relativamente fuerte: estamos obligados a declarar el tipo de dato de cada variable antes de utilizarla, pero hay muchos tipos simples que son equivalentes entre sí, es fácil alternar de un tipo a otro. Está sujeto a un paradigma imperativo basado en programación estructurada y modular, por lo que no es posible, por ejemplo, utilizarlo para aplicaciones orientadas a objetos, o basadas en paradigmas funcionales, entre otros.

C# es un lenguaje de programación desarrollado por Microsoft en torno al año 2000, como continuación de los lenguajes C y C++. Además de "heredar" algunas características de estos lenguajes, también incorpora aspectos de sintaxis de otros, como por ejemplo, y sobre todo, Java.

Entre sus características principales, podemos decir que es un lenguaje multiparadigma (es decir, se puede aplicar enfocado a distintos paradigmas de programación), aunque con una filosofía orientada a objetos. Tiene un tipado fuerte de datos (es decir, estamos obligados a definir el tipo de datos de cada variable, y mantenerlo durante la ejecución del programa), y es un lenguaje que se compila a un ejecutable. Dependiendo del compilador que se utilice, se puede compilar a un ejecutable nativo del sistema operativo (propio para sistemas Windows) o a una máquina virtual intermedia (plataforma .NET), que serviría para ejecutar estos programas en otros sistemas (Linux, Mac OSX).

C++ es un lenguaje desarrollado en 1979 por Bjarne Stroustrup como continuación de su predecesor, el lenguaje C. Se añadieron nuevas características sobre la base de C, como por ejemplo, y sobre todo, la orientación a objetos, lo que le hacía un lenguaje multiparadigma.

Se mantienen muchas características de C, de modo que sigue siendo un lenguaje compilado, y con un tipado de datos similar. Mantiene muchas características importantes de C, como su eficiencia en el código generado, al ser un lenguaje de relativamente bajo nivel, lo que lo hace ideal, como ocurre con C, para desarrollar motores gráficos para desarrollo de videojuegos, o compiladores/intérpretes de lenguajes. De hecho, el motor V8 de Google Chrome, con el que se interpreta el lenguaje JavaScript en dicho navegador, está desarrollado en C++.

Java es un lenguaje de programación desarrollado inicialmente por la empresa Sun Microsystems, a finales del siglo XX (1996). Su propósito inicial fue convertirse en un lenguaje que se pudiera utilizar en diversos tipos de aparatos electrónicos, aunque su popularidad pronto lo focalizó en el desarrollo de distintos tipos de aplicaciones para ordenador. Posteriormente, el lenguaje cambió de propietario, y actualmente pertenece a Oracle.

Es un lenguaje multiparadigma (es decir, apto para trabajar con distintos paradigmas de programación), aunque con una filosofía orientada a objetos. Es fuertemente tipado (es decir, debemos definir el tipo de dato de cada variable y mantenerlo durante la ejecución del programa), y se compila a una máquina virtual intermedia, llamada JVM (Java Virtual Machine), lo que genera unos archivos intermedios (con extensión .class) que son aptos para cualquier sistema donde se pueda lanzar dicha máquina virtual.

Durante sus ya muchas versiones ha sufrido importantes cambios e incorporaciones en su sintaxis. La versión 8 supuso un giro importante al introducir características de programación funcional, tales como expresiones lambda o manejo de streams. La versión 9, por su parte, introdujo la gestión de módulos para dependencias en aplicaciones. Aquí trataremos aspectos generales de la sintaxis de Java, que se pueden aplicar a (casi) cualquier versión.

JavaScript es, hoy por hoy, el lenguaje por excelencia para desarrollo de aplicaciones web en el lado del cliente, ya que la inmensa mayoría de navegadores actuales sólo interpretan dicho lenguaje. Fue creado por primera vez a finales del siglo XX (1995), e incorpora algunos aspectos de sintaxis del lenguaje C, pero también presenta similitudes con otros lenguajes. A pesar de que su nombre puede hacer pensar que guarda algún parentesco con Java, lo cierto es que son dos lenguajes radicalmente diferentes.

Entre sus características principales, es un lenguaje interpretado, con un tipado débil, y multiparadigma, ya que permite emplear aproximaciones imperativas, funcionales, orientadas a objetos, etc.

A pesar de que su principal objetivo es el desarrollo de aplicaciones web en el lado del cliente, en los últimos años también ha dado un salto significativo al respecto, y podemos desarrollar aplicaciones de escritorio, o aplicaciones web en entorno servidor, entre otras cosas.

Kotlin es un lenguaje de programación compatible con la JVM (Máquina Virtual de Java). De reciente creación (2016) es ampliamente utilizado para el desarrollo de aplicaciones móviles nativas para Android, y tiene el soporte de Google para ello. Guarda algunas similitudes con el lenguaje Java, como el tipado estático, paradigma orientado a objetos, etc, aunque algunas características de su sintaxis lo asemejan también a otros lenguajes.

PHP es un lenguaje fundamentalmente orientado al desarrollo de aplicaciones web, desarrollado por primera vez a finales del siglo XX (1995). Actualmente, la inmensa mayoría de aplicaciones web que podemos encontrar en Internet están escritas utilizando este lenguaje, lo que nos da una idea de su importancia.

Se trata de un lenguaje interpretado, con un tipado débil de datos (el tipo de datos se fija a través del valor que se asigna a las variables, pero no se declara explícitamente). Es también un lenguaje multiparadigma, ya que permite utilizar tanto aproximaciones imperativas, como orientadas a objetos, y también incorpora algunos detalles de otros paradigmas, como la programación funcional.

Python es un lenguaje desarrollado a finales del siglo XX (1991), caracterizado fundamentalmente por su simplicidad y legibilidad de código. Se trata de un lenguaje muy popular por su facilidad de aprendizaje y por producir un código generalmente más corto que otros lenguajes para resolver un mismo problema.

Es un lenguaje multiparadigma, que permite trabajar con orientación a objetos, paradigmas imperativos, funcionales, etc. Es un lenguaje interpretado, por lo que no se genera ningún archivo compilado, y se ejecutan las instrucciones sobre el propio archivo fuente. Tiene un tipado débil de datos, lo que significa que las variables toman el tipo de dato dependiendo del valor que se les asigna, y no hay que especificar explícitamente dicho tipo de datos.

Durante los últimos años han coexistido dos versiones distintas del lenguaje (versiones 2 y 3), con algunos matices diferenciadores importantes, que hacen que el código de una de ellas sea incompatible con la otra. Según la propia web, la versión 2 ha dejado de tener soporte, por lo que nos centraremos aquí en la versión 3.

(C) NachoIB, 2020 - contacto.lenguaj.es@gmail.com