Con sus inicios en el siglo XIX, la informática ha sufrido una gran ramificación de áreas variadas, si bien en sus orígenes la informática fue usada para la resolución de problemas matemáticos, ahora esta ciencia está presente en todas partes. Desde la tostadora que calienta el pan durante un tiempo determinado, hasta los sistemas de navegación de las aeronaves modernas, la informática tiene miles de aplicaciones prácticas.

Aquí es donde entra el trabajo de los programadores, quienes se encargan de diseñar algoritmos y software que controlan estos dispositivos. Para ello, utilizan un lenguaje de programación para comunicarse con las computadoras encargadas de realizar las tareas. Con tantos lenguajes de programación en existencia, es difícil al principio saber para qué sirve cada uno. Por lo que surge el siguiente cuestionamiento: ¿Cuál es el mejor lenguaje de programación?

Para resolver esta pregunta se analizaron 5 campos donde se lleva a cabo el desarrollo de software: Robótica, Computación científica, Videojuegos, Programación web, y Sistemas embebidos.

 

Robótica

Alex Owen-HIll considera a los lenguajes C y C++, como los mejores para el área de la robótica, ya que estos lenguajes permiten una mayor interacción con el hardware de las máquinas. Asimismo, estos 2 lenguajes son reconocidos por la extensa mayoría de las computadoras, y es muy posible que todas tengan su propio compilador de C/C++. Estos lenguajes permiten una mayor interacción en tiempo real con la computadora y los dispositivos que permiten a los robots realizar sus funciones, por lo que son los lenguajes óptimos para esta tarea.

Computación científica

Python se ha convertido sin duda en uno de los lenguajes preferidos por los científicos para realizar cálculos matemáticos y estadísticos. Gracias a su facilidad de aprendizaje, amplia colección de herramientas destinadas a aplicaciones matemáticas, los científicos han podido utilizar este poderoso lenguajes para casi cualquier problema al que se enfrenten.

No obstante lenguajes como Matlab o Mathematica siguen teniendo una fuerte presencia en este campo, ambos lenguajes enfocados en las matemáticas y la ciencia, están optimizados para resolver problemas de esta gama.

Finalmente, Fortran permanece como uno de los lenguajes más usados en esta área, ya que los mismos sistemas y software empleado hace más de 50 años, se sigue utilizando para la investigación científica.

Videojuegos

Para las consolas, C# y C++ son los lenguajes más utilizados en la programación de videojuegos, debido a su velocidad de ejecución, y  su alto nivel, ya que contiene funciones avanzadas para la programación de videojuegos, y alta compatibilidad con hardware gráfico. Motores para el desarrollo de videojuegos como Unreal Engine o Unity, fueron desarrollados en el lenguaje C++.

Ahora bien, los videojuegos para dispositivos móviles, se desarrollan en dos lenguajes diferentes, Java, y Objective-C, para Android y iOS, respectivamente.

Web

La programación Web es una de las ramas en las que un solo lenguaje no es suficiente para una aplicación específica, sino que varios lenguajes se intercomunican para dar como resultado una página o aplicación Web. A continuación se presentan lenguajes comúnmente utilizados para diseñar un sitio web.

HTML

HTML es el lenguaje esencial para desarrollar una página Web, a través de él se desarrolla la interfaz general, los hiperlinks, y el contenido que el sitio web ofrece.

CSS

Este lenguaje tiene como función principal establecer un diseño en la página, que se puede ajustar a diferentes tamaños de monitor, como laptops, tablets, o dispositivos móviles, asimismo, se encarga de establecer los colores, y aspecto del sitio en general.

Javascript

Es empleado para ejecutar programas o scripts dentro del sitio, como lo puede ser un juego, o un editor de textos.

SQL

Con este lenguaje se pueden crear bases de datos y consultar cierta información contenida en esta, por ejemplo, para acceder a los registros de compra de un usuarios, y mostrarlos en la página web.

 

Sistemas embebidos

Para sistemas embebidos, como los microcontroladores, se encontró que C y C++, son los lenguajes más usados para desarrollar software en estos dispositivos, ya que son lenguajes de alta ejecución, y que permiten interactuar a un muy bajo nivel con el microprocesador., sin perder características de un lenguaje de alto nivel. Adicionalmente, los programadores cuentan con extensas librerías con herramientas que facilitan la programación de sistemas embebidos con este lenguaje.

El lenguaje ensamblador (ASM), es también utilizado en esta área, sobre todo cuando se trata de aplicaciones sencillas, o procesadores muy limitados. Este lenguaje (específico para cada arquitectura de computadora), le permite a los programadores comunicarse directamente con el microcontrolador e implementar soluciones eficientes.

Conclusiones

Se puede concluir que no existe un lenguaje de programación que pueda ser usado en todas las áreas, o incluso dentro de un área misma, sino que cada lenguaje está diseñado para un propósito específico. La elección de un lenguaje depende de los requerimientos de la aplicación o problema a resolver.

Referencias

TIOBE Index | TIOBE – The Software Quality Company. (2017). Tiobe.com. Disponible en https://www.tiobe.com/tiobe-index/

Yarkoni, T. The homogenization of scientific computing, or why Python is steadily eating other languages’ lunch. [citation needed]. Recuperado de: https://www.talyarkoni.org/blog/2013/11/18/the-homogenization-of-scientific-computing-or-why-python-is-steadily-eating-other-languages-lunch/

Ganssle, J. (2015). On languages. Embedded. Recuperado de: https://www.embedded.com/electronics-blogs/break-points/4440922/On-languages

Bogdan, G. (2016). Top 7 Programming Languages Used in Video Games | Freelancer Blog. Freelancer.com. Recuperado de: https://www.freelancer.com/community/articles/top-7-programming-languages-used-in-video-games

Owen-Hill, A. (2016). What is the Best Programming Language for Robotics?. Blog.robotiq.com. Recuperado de: https://blog.robotiq.com/what-is-the-best-programming-language-for-robotics

Trego, M. (2017). Top 10 Programming Languages Used in Web Development: Programming and Development Blog | Stone River eLearning. Blog.stoneriverelearning.com. Recuperado de: http://blog.stoneriverelearning.com/top-10-programming-languages-used-in-web-development/
Imagen recuperada de:  http://www.epe.admin.cam.ac.uk/computer-science

Anuncios