Cada lenguaje tiene sus aplicaciones y es fuerte en determinada área, entonces lo primero es definir qué es lo que querés desarrollar o cuál es el ámbito profesional en el que te gustaría desenvolverte. Y esto contesta un poco la pregunta ¿cuál es el mejor lenguaje?, ya que no existe tal cosa.
La forma de abordar este tema es muy extensa, y lo que pretendo es orientarte, por lo que haré una preselección para que elijas. Veamos las alternativas!
Tabla de Contenidos
- 1. Lenguajes web
- Lenguajes para aplicaciones mobile y de escritorio
- Lenguaje ideal para principiantes
1. Lenguajes web
La programación web se divide en 2 partes, el backend y el frontend, cada una de las cuáles tiene sus lenguajes.
1.1 Frontend
Es la parte visible del sitio, es la estructura junto a los elementos necesarios para que la web se vea como fué diseñada.
1.1.1 HTML
Es un lenguaje de marcado, lo que quiere decir que su sintaxis o forma de escribir está basada en etiquetas que le indican al navegador que una parte del código es el encabezado, un artículo o un link por ejemplo.
Sin esta estructura, las webs no podrían verse como lo hacemos.
1.1.2 CSS
Este lenguaje se apoya en la estructura HTML y es el encargado de darle estilos al sitio, de allí su nombre “Hojas de Estilo en Cascada” por sus siglas en inglés.
Con CSS podremos definir tamaños de los bloques, tipografías, colores de texto y/o fondos, acomodar imágenes, etc.
Podríamos prescindir de CSS, y definir los estilos directamente en el HTML, pero el mantenimiento de los sitios sería una odisea. Imaginate tener que modificar algo en 50 páginas, tendríamos que editar una por una. En cambio con las hojas de estilos, sólo será cuestión de cambiar unos pocos archivos que afectarán a todo el sitio.
1.1.3 Javascript
Es el lenguaje encargado de darle funcionalidades a la web, por lo que es el tercer eslabón fundamental para este tipo de desarrollos.
Con Javascript podremos controlar que hace el usuario en nuestro sitio, por ejemplo validar si ingresó correctamente los datos en un formulario, mostrarle notificaciones, hacer aparecer o desaparecer elementos y una infinidad de cosas.
1.2 Backend
Es la parte «invisible» de un sitio web, ya que sucede en el servidor. Se trata por ejemplo de almacenar información en base de datos, leer una hoja de Excel para extraer su información y entregársela a Javascript para que la incluya en el sitio, etc.
A diferencia del frontend, la elección del lenguaje de backend no es tan clara, ya que dependerá de la plataforma donde funcione (Linux, Windows) y de los recursos humanos con los que se cuente, ya que por ejemplo Java requiere un conocimiento más específico que Python, esto es lo que se conoce como curva de apendizaje.
1.2.1 Python / PHP
Ambos son lenguajes aptos tanto para principiantes, como para avanzados. Sus características permiten comenzar a escribir código en muy corto tiempo, y luego usar conceptos avanzados que llevan nuestros sistemas al siguiente nivel.
1.2.2 Java
Uno de los lenguajes más demandados. Su curva de aprendizaje es más alta, pero sus estándares lo convierten en un lenguaje altamente estable, seguro y mantenible.
1.2.3 Javascript
Acá suele haber confusiones con Java, ya que no se trata del mismo lenguaje.
Aunque si se trata del mismo lenguaje que usamos para el frontend. Esto es lo que lo convierte en un excelente candidado para principiantes, ya que aprendiendo la sintaxís es posible desenvolverse los dos ámbitos.
1.2.4 SQL
Es un lenguaje orientado a base de datos. Permite administrar datos almacenados en motores tales como MySQL, MongoDB o PostgreSQL.
Lenguajes para aplicaciones mobile y de escritorio
Para mobile, los 2 grandes tienen sus lenguajes, Android utiliza Java, iOS utiliza Swift.
En cuanto a aplicaciones de escritorio, volveremos a mencionar a Java y comenzaremos a entender porqué a pesar de que requiere más esfuerzo, su área de uso es muy amplia, y en consecuencia la demanda laboral de este lenguaje es alta.
Saliendo de estas alternativas conocidas como nativas, existen lenguajes conocidos como híbridos, que permiten generar desarrollos para múltiples plataformas a partir de un único código fuente. Esto tiene la gran ventaja de costos, ya que se requiere menos personal y tiempo, pero a su vez se puede ver algo limitado en cuanto a funcionalidades, aunque cada vez esta brecha se acorta.
Un ejemplo de esto es Flutter, el framework de Google.
Lenguaje ideal para principiantes
Debido a su facilidad de comenzar a escribir código y ver resultados, tomaremos a Python como el lenguaje para comenzar a entender lógica y sintáxis. Luego de sentar esas bases, migrar a otro lenguaje será sencillo.