Qu茅 lenguaje de programaci贸n deber铆as aprender

 

Qu茅 lenguaje de programaci贸n deber铆as aprender

Una de las primeras preguntas que un desarrollador se plantea es qu茅 lenguaje de programaci贸n deber铆a aprender. Como en la mayor铆a de los casos, la respuesta es que no hay un mejor lenguaje, ni un lenguaje para todo, ni tampoco un lenguaje recomendado sino lenguajes que se adaptan mejor a ciertas necesidades. Sin embargo, os encontrar茅is con algunos expertos que defienden la idea de hacer todo con el mismo lenguaje, aunque para ello haya que forzar mucho sus capacidades o los resultados no sea 贸ptimos.

Programaci贸n para dispositivos m贸viles

Uno de los 谩mbitos de la programaci贸n que m谩s auge est谩 teniendo en los 煤ltimos a帽os es a帽os es la programaci贸n de aplicaciones para m贸viles. El problema que encontramos en este campo es que cada fabricante ha decidido utilizar un lenguaje de referencia para realizar las aplicaciones en su sistema operativo. Esto significa que aunque es posible realizar aplicaciones en otros lenguajes, en la pr谩ctica se utiliza el que marca el fabricante.

Programaci贸n para iOS

El sistema operativo de la manzana utiliza como lenguaje de programaci贸n de referencia Swift, por lo que este es el lenguaje que recomiendo aprender en este caso. Anteriormente Apple se decant贸 por Objetive-C pero despu茅s de muchos a帽os utiliz谩ndolo, 茅ste ha quedado en desuso.

Programaci贸n para Android

Google cuando desarroll贸 Android se decidi贸 por utilizar el lenguaje de programaci贸n Java como base para la creaci贸n de las aplicaciones de sus sistema. Por lo que es el que recomendamos aprender si nos queremos dedicar a esta plataforma.

Programaci贸n para Windows

En el caso de Windows, Microsoft decidi贸 decantarse por C#, su lenguaje de programaci贸n, como base para desarrollar aplicaciones para su sistema.

Programaci贸n multiplataforma

Como hab茅is podido comprobar, cada sistema tiene un lenguaje distinto de referencia, lo que hace muy complejo poder dise帽ar aplicaciones multiplataforma. Sin embargo existen algunos m茅todos para crear aplicaciones multiplataforma:

  • Xamarin: esta tecnolog铆a est谩 desarrollada por Microsoft y usa como lenguaje C#. Adem谩s permite generar aplicaciones nativas para las tres plataformas anteriores.
  • Ionic: esta tecnolog铆a permite desarrollar aplicaciones multiplataforma mediante el uso de lenguajes de programaci贸n web (HTML, CSS y JavaScript).
  • PhoneGap: esta tecnolog铆a al igual que Ionic permite desarrollar aplicaciones multiplataforma con lenguajes de programaci贸n web.

 

Programaci贸n para el escritorio

En el caso de que queramos realizar aplicaciones para los sistemas operativos de escritorio (con interfaz gr谩fica), podemos optar por los siguientes lenguajes de programaci贸n:

Programaci贸n para Windows

En el caso de Windows, el lenguaje de programaci贸n m谩s usado es C#. Durante muchos a帽os WPF fue la tecnolog铆a m谩s utilizada para desarrollar programas para Windows con interfaz gr谩fica, actualmente con Windows 10, Microsoft est谩 promocionando mucho las aplicaciones universales (UWP).

Programaci贸n para MacOS

El caso de Mac OS es similar al de iOS, en un principio Apple se decant贸 por Objetive-C, pero actualmente este ha sido remplazado por Swift.

Programaci贸n para Linux

En el caso de GNU/Linux no hay un consenso sobre que tecnolog铆as usar para desarrollar aplicaciones de escritorio. Sin embargo una de las m谩s usadas en GTK que puede usar utilizada con los lenguajes C y C++.

Programaci贸n multiplataforma

En el caso de que queramos desarrollar aplicaciones multiplataforma con interfaz gr谩fica, encontramos que podemos usar distintos lenguajes como Java con Swing, JavaScript haciendo uso de CSS u otro cualquiera que soporte Qt.

Programaci贸n en l铆nea de comandos

Si nos encontramos en el caso de que no necesitemos interfaz gr谩fica, podemos usar lenguajes como Java, C, C++, Python o JavaScript. En el caso de C y C++ es necesario generar un ejecutable para cada plataforma, en el resto no.

 

Programaci贸n web

Otro de los 谩mbitos m谩s importantes en los 煤ltimos a帽os es la programaci贸n web, la ventaja que presenta este tipo de programaci贸n es que no depende del sistema operativo que use el cliente.

Las tecnolog铆as y lenguajes de programaci贸n web m谩s usadas son HTML, CSS y JavaScript. Pero existen otras que tambi茅n lo permiten:

  • Ruby usando Rails
  • Python usando Django
  • PHP el cual puede ser usado solo o con distintos frameworks de desarrollo web como Symfony o Laravel.
  • Java
  • C# usando ASP.NET

 

Infograf铆a sobre qu茅 lenguaje de programaci贸n deber铆as aprender

 

Infografia de lenguajes de programacion

D贸nde encontrar recursos para aprender un lenguaje de programaci贸n

Uno de los problemas m谩s comunes que podemos encontrar, es que hay multitud de sitios que hablan de aprender a programar, algunos centrados en un lenguaje, otros masivos, bastantes en ingl茅s y una minor铆a en espa帽ol. Mi recomendaci贸n personal, es que en un primer lugar aprend谩is los conceptos b谩sicos del lenguaje que vosotros consider茅is oportuno, para ello pod茅is visitar esta recopilaci贸n de gu铆as para aprender a programar gratis. Una vez que sab茅is los conceptos b谩sicos, os animo a buscar en este y otros blogs las respuestas a vuestras dificultades con problemas concretos.

The following two tabs change content below.

Jorge Dur谩n

Entusiasta de la tecnolog铆a desde los 10 a帽os, desarrollador y creador de varios proyectos de software y autodidacta por naturaleza. Ingeniero Inform谩tico por la USAL