martes, 2 de diciembre de 2014

Historia y desarrollo de los lenguajes de Programación

Los antecedentes de Java habría que buscarlos en los lenguajes de programación C y C++. El lenguaje C fue desarrollado en la década de los 70 y constituye un lenguaje muy robusto usado como núcleo del sistema operativo Unix. C no admite la orientación a objetos y está considerado un lenguaje “poco amigable” desde el punto de vista de que su sintaxis, elementos de programación que emplea (manejo directo de memoria) y otras cuestiones hacen que sea un lenguaje difícil de aprender. C++ fue una evolución de C desarrollada en los años 80. Introdujo el diseño orientado a objetos, pero manteniendo la compatibilidad con C. Esto suponía que C++ permitiera tanto el uso de la programación estructurada “tradicional” como la programación orientada a objetos. Además C++ mantuvo ciertas características de C como el manejo directo de la memoria, el uso de variables globales, sentencia goto, etc. que hicieron que la evolución fuera “parcial”.

Como paso final en esta evolución tenemos Java, un lenguaje que evoluciona a partir de C y C++, pero que elimina diversos aspectos de estos lenguajes y se constituye en un lenguaje definitivamente orientado a objetos. El romper con distintos aspectos de C++ cuyo manejo inadecuado por parte de muchos programadores daba lugar a problemas en las aplicaciones ha sido un factor decisivo para convertir a Java en un lenguaje popular y de amplio uso.

Nosotros vamos a quedarnos con el lado práctico de lo que hemos comentado respondiendo esta pregunta: ¿Es necesario saber C ó C++ para programar en Java? No, no es necesario. Aunque puede suponer una ventaja para aquellas personas que tengan conocimientos previos en estos lenguajes, no recomendamos de forma explícita su estudio en profundidad como paso previo al aprendizaje de Java.

De modo orientativo, veamos un esquema sobre la evolución de los lenguajes.



Este esquema es meramente orientativo: es imposible reflejar la diversidad de lenguajes y su evolución en un gráfico tan simplificado. También los datos relativos a fechas son orientativos.

No hay que suponer que lo único válido sea la programación orientada a objetos por ser lo más moderno. Al contrario, muchísima programación de la que se hace hoy en día se basa en lenguajes o código no orientado a objetos. Además, la misma programación orientada a objetos se basa en conceptos muy antiguos de programación.

Tener en cuenta que algunos lenguajes que nacieron en los años 60 han perdido vigencia y ya no se usan, mientras que otros se han ido modernizando y continúan usándose más o menos ampliamente, como es el caso de Cobol. Lo que consideramos interesante con este esquema es que se vea que Java es una evolución que por un lado incorpora cosas que se venían usando desde hace mucho tiempo en programación, y por otro introduce ciertas novedades que lo convierten en un lenguaje moderno.

No hay comentarios:

Publicar un comentario