Los mejores lenguajes de Programación para Desarrolladores de Linux

Pida a cualquier desarrollador experto que nombre el primer lenguaje de programación que asociaría con Linux, y probablemente respondería a C, dada la historia estrechamente alineada de Unix y C.

Pero en los 24 años desde que apareció por primera vez, Linux probablemente ha sido el hogar de todos los lenguajes de programación conocidos por la humanidad: No solo lenguajes obvios como C, C++, Python y Java, sino también C# (Mono), Fortran, Pascal, COBOL y Lisp y muchos más.

Echa un vistazo a los últimos trabajos de Linux.

En una encuesta de diciembre de 2014, los lectores de Linux Journal colocaron a Python en la parte superior de su lista de mejores lenguajes de programación (30,2 por ciento), seguido de C++ (17,8 por ciento), C (16,7 por ciento), Perl (7,1 por ciento) y Java (6,9 por ciento). Esos rankings se han mantenido en gran medida sin cambios en los últimos años, no es sorprendente, teniendo en cuenta que el mundo de Linux es un lugar bastante conservador. (Un idioma que sube rápidamente en la lista de Linux Journal es Google Go: Pasó del 1,8 por ciento en 2013 al 2,4 por ciento el año pasado.)

A diferencia de Windows con su interfaz gráfica de usuario incorporada, Linux aprovecha cualquier kit de herramientas de interfaz gráfica de usuario que use (por ejemplo, Ot, GTK+, wxWidgets) a menos que se limite a la programación de terminales. Por supuesto, no todo el desarrollo de Linux requiere una interfaz gráfica de usuario: Piense en servidores o demonios, que son el equivalente de Linux de los servicios de Windows. Así que echemos un vistazo más de cerca a cada uno de los cinco idiomas principales de Linux Journal para evaluar las fortalezas y debilidades de cada uno para el desarrollo de Linux.

Python y C++

Python parece ser cada vez más popular, y es posiblemente el mejor lenguaje de propósito general que existe actualmente. Es fácil de aprender, con la ayuda de un intérprete (pypy) y compiladores como cpython, Jython (genera código Java) y otros que toman Python y producen código il (en.NET), o C, C++ o JavaScript.

Desarrollar juegos AAA y Computación de Alto Rendimiento (HPC) es donde Python no ha funcionado tan bien. C++ domina actualmente esos espacios, con Python teniendo notablemente poco impacto en el desarrollo móvil que no sea en código abierto. No estoy seguro de que alguna vez veamos el cambio de desarrollo de juegos AAA a Python, pero ciertamente está haciendo incursiones en el campo de HPC. (Me gusta C++, pero obtener conocimientos de programación expertos en él parece requerir ser un desarrollador a tiempo completo; compare eso con Python, que puede ser recogido por niños pequeños.)

C

C es lo más cercano a la programación de metal que jamás obtendrás a menos que codifiques en ensamblador; Linus Torvalds enumera esta cercanía como una razón por la que le gusta. Es fácil de aprender, y una vez que dominas los punteros, puedes hacer casi cualquier cosa. Sin embargo, tienes que escribir mucho código para hacer cosas que vienen de serie en otros lenguajes; el manejo de cadenas en particular es tedioso y propenso a errores. Para la codificación de bajo nivel, C es difícil de superar y hay un montón de software escrito en él (probablemente mucho más en Linux, que está escrito en gran parte en C).

Perl

Durante muchos años Perl, descrito por muchos desarrolladores como la» motosierra del Ejército Suizo » de los lenguajes de scripting, fue el lenguaje para sofisticados scripts de procesamiento de texto, y se instaló en sistemas similares a Linux/Unix por defecto. Ha existido desde 1987, con una base de instalación masiva a juego: De acuerdo con la siempre confiable Wikipedia, la Completa Red de Archivos Perl (CPAN) lleva más de 140.776 módulos, de más de 11.804 autores, y se refleja en todo el mundo en más de 250 ubicaciones.

A pesar de (o quizás debido a) la edad de Perl, lenguajes como Python, PHP y Ruby han venido reemplazándolo gradualmente. Pero no esperes que desaparezca pronto.

Java

Linux siempre ha parecido el hogar natural para Java, al menos con respecto a la tecnología del lado del servidor. El patrón de aplicaciones Windows del lado del cliente que hablan con servidores Linux Java es común y muy popular en las empresas. La tecnología de servidor web Java JSP no se ha acercado a PHP o ASP.NET en términos de tasas de adopción, pero puede encontrar alojamiento web JSP (a menudo caro y que consume muchos recursos). Java alimenta muchos servidores de juegos de Internet, especialmente Minecraft.

Otros dos lenguajes que funcionan bien en Linux son JavaScript y Go. Después de diez años de ser criticado por su bajo rendimiento, JavaScript se volvió realmente genial cuando sitios web populares como Google Maps comenzaron a aprovecharlo. JavaScript continuó mejorando; gracias a mejores motores, ahora es capaz de ejecutar juegos de navegador gráficamente intensos.

Si eso no fuera suficiente, JavaScript ha surgido como un lenguaje serio del lado del servidor, con Nodo.js es uno de los frameworks más conocidos.

Google Go

Con menos de cinco años, Google Go ha ganado su cuota de admiradores; Google, Dropbox y otras empresas lo utilizan para sus respectivos sistemas internos. Con una sintaxis similar a C fácil de aprender, compila y ejecuta programas muy rápidamente y hace que escribir código simultáneo sea mucho más fácil que un enfoque de múltiples hilos. Viene con una extensa biblioteca estándar que se complementa con muchas bibliotecas de terceros. Aunque es un lenguaje de programación de propósito general, es fuerte como lenguaje de sistemas y útil para implementar servidores web.

Conclusión

Todos los lenguajes de programación son solo herramientas para ayudar a resolver problemas de programación, y la elección de cuáles usar a menudo está determinada no por las fortalezas de los lenguajes, sino por factores completamente no relacionados, como el hardware disponible, la política interna, las experiencias previas y similares. El hardware de Linux varía desde sistemas simples y de bajo costo hasta mainframes de «Gran Hierro» de un millón de dólares, pero independientemente del costo, ejecutará cualquiera de estos lenguajes.

Sube tu currículum Los empleadores quieren candidatos como tú. Sube tu currículum. Demuéstrales que eres increíble.

Imagen: Mclek/. com