Lenguajes de programación que debes conocer en 2021

Desde 2014 publicamos cada año por estas fechas un post con el índice Tiobe como referencia de los lenguajes de programación más extendidos. Hoy volvemos a publicarlo para ver su evolución anual de abril 2020 a abril 2021.

Este índice recoge el ranking de los lenguajes de programación más populares y valorados por los ingenieros, cursos y proveedores de TI. Estos cálculos se cuantifican gracias a los motores de búsqueda de Google, Bing, Yahoo, Wikipedia, Amazon, Youtube y Baidu. Es importante tener en cuenta que el índice TIOBE no trata de puntuar el mejor lenguaje de programación o el idioma en el que se han escrito la mayoría de las líneas de código.

Ofrecemos esta referencia para comprobar cómo de actualizados están nuestros conocimientos. Tanto en cuanto a lenguajes de programación que usamos, como a la hora de decidir cuál aprender o adoptar. Y con esta tabla vemos la evolución anual entre abril 2020 y 2021.

El lenguaje de programación Objective-C se ha caído del top 20 del índice este mes. Hace unos 10 años, Objective-C era la estrella en ascenso en el índice TIOBE, porque los iPhones de Apple estaban comenzando a crecer y sus aplicaciones eran programadas en Objective-C.

En 2014 Apple anunció su nuevo lenguaje llamado Swift que debería reemplazar a Objective-C; pero sorprendentemente ha pasado mucho tiempo antes de que Swift rebasara en popularidad a Objective-C. Hoy Swift está en el 15º puesto, frente al 23º de Objective-C. 

 

indice tiobe top 20 abril 2021

TOP 5: relevo en la cabeza del ranking 

C adelanta a Java y se aúpa al primer lugar y fundamenta las bases de un conocimiento de programación, mientras aprendes C estás aprendiendo conceptos básicos de lenguajes cómo Java o C#. Además no sólo es más sencillo que estos últimos, sino que también comparten gran parte de su sintaxis.

Java desciende al segundo puesto como lenguaje de programación muy popular. Es muy útil para aprender los principios de la programación orientada a objetos que se usa en otros lenguajes modernos como C++, Perl, Python, o PHP. Una vez que has aprendido Java, es más fácil aprender estos otros lenguajes. Tiene la ventaja de que es un lenguaje muy maduro y con una larga trayectoria. Se usa en una gran cantidad de entornos, incluido el desarrollo de aplicaciones en Android, así que es un lenguaje muy práctico.

3º Python llegó hace cuatro años al TOP 5 y sigue tercero desde abril 2020. Se trata de un lenguaje de programación interpretado cuya filosofía hace hincapié en una sintaxis que favorezca un código legible. Se trata de un lenguaje de programación multiparadigma, ya que soporta orientación a objetos, programación imperativa y, en menor medida, programación funcional. Python es un lenguaje de escritura rápido, escalable, robusta y de código abierto, lo que hace de Python un aliado perfecto para la Inteligencia Artificial.

4º C++ varias veces ha intercambiado la 4ª posición con Python. C++ es un lenguaje de nivel intermedio con características de programación orientada a objetos, originalmente diseñadas para mejorar el lenguaje C. C++ se utiliza para el desarrollo de software de sistemas, software de aplicaciones, servidores de alto rendimiento y aplicaciones de cliente y videojuegos (Firefox, Winamp y los programas de Adobe, Counter strike… ).

 

Los lenguajes que más suben, sorprende un ‘dinosaurio’

17º (desde el 48º) Groovy es el que más sube ¡31 puestos!. Groovy es un lenguaje que nació en 2003, basado en algunas funcionalidades similares a Python, Ruby, Perl y Smalltalk. Todo ello ejecutándose sobre la máquina virtual de Java, con la posibilidad de utilizar la riquísima biblioteca de librerías de Java, entre otros beneficios.
Groovy es un lenguaje muy versátil para desarrollar aplicaciones web, aplicaciones de escritorio, aplicaciones móviles para Android o incluso como lenguaje de scripting.

20º (desde el 34º) Fortran es un ‘dinosaurio’ de los lenguajes que vuelve al top 20 después de más de 10 años. Fortran fue el primer lenguaje de programación comercial de la historia y está ganando popularidad gracias a la enorme necesidad de procesamiento y cálculo científico.

(desde el 14º) Assembly es el lenguaje ensamblador de programación de bajo nivel, este es su puesto más alto en los 5 últimos años. El lenguaje ensamblador expresa las instrucciones de una forma más natural al hombre a la vez que muy cercana al microcontrolador. Desde que publicamos el índice hemos visto a este lenguaje tener altibajos en su popularidad, pero nunca ha salido del TOP 20. 

11º (desde el 19º) Classic Visual Basic. Vuelve un clásico de los años '90, (Classic) Visual Basic era muy popular. Su última versión, VB6, era utilizada por millones de personas para crear aplicaciones de escritorio de manera sencilla y visual. Su suave curva de aprendizaje permitía a cualquiera programar cosas útiles en muy poco tiempo. Es la versión de la que se escindió Visual Basic.NET que ahora es Visual Basic, 6º en el índice TIOBE.  

12º (desde 22º) Delphi/Object Pascal. Delphi es un entorno de desarrollo de software para la programación de propósito general con énfasis en la programación visual. En Delphi se utiliza como lenguaje de programación una versión moderna de Pascal llamada Object Pascal. En sus diferentes variantes, Delphi permite producir archivos ejecutables para Windows, MacOS X, iOS, Android, GNU/Linux y la plataforma .NET. Un uso habitual de Delphi, aunque no el único, es el desarrollo de aplicaciones visuales y de bases de datos cliente-servidor y multicapas.

 

Los lenguajes que más bajan

15º (desde el 11º) Swift es el lenguaje de programación multiparadigma creado por Apple enfocado en el desarrollo de aplicaciones para iOS y macOS. No ha conseguido consolidar su ranking más alto del año pasado, a pesar de la caída de su competidor Objective-C. ¿Extraño, no?

16º (desde el 10º) R es un entorno y lenguaje de programación con un enfoque al análisis estadístico. Se trata de uno de los lenguajes de programación más utilizados en investigación científica, siendo además muy popular en el campo de la minería de datos, la investigación biomédica, la bioinformática y las matemáticas financieras. ¿Estará sustituyéndolo Fortran en las preferencias de los programadores de cálculo científico?

 

Puedes consultar nuestro post anterior sobre el mismo tema en Lenguajes de programación que debes conocer en 2020

 

 

Cambios en el formato de publicación de apps Android en Google Play en 2021

En 2021 Google continúa actualizando el nivel de API objetivo, por lo que las nuevas aplicaciones en Google Play deben apuntar al nivel de API 30 (Android 11) en agosto 2021.  Y en noviembre 2021 será necesario para todas las actualizaciones de aplicaciones ya existentes en Google Play. 

Android App Bundle

Google Play requerirá a las nuevas apps a usar el formato de publicación Android App Bundle . Se trata del nuevo formato de publicación oficial de Android que ofrece una forma más eficiente de compilar y lanzar apps. Beneficia a las aplicaciones más pequeñas y versiones más simples, facilitando su llegada a más usuarios y desarrolladores.

El cambio a App Bundle de las aplicaciones principales ahorra un tamaño promedio del 15% en comparación con un APK universal. Los usuarios se benefician de las descargas más pequeñas y los desarrolladores disfrutan de tasas de éxito de instalación más altas; lo que influye especialmente en regiones con más dispositivos económicos y velocidades de datos más lentas. 

Los desarrolladores que cambian pueden usar funciones de distribución avanzadas como Play Asset Delivery  y Play Feature Delivery. Google también prevé presentar más funciones y opciones para la firma de aplicaciones de Play y los paquetes de aplicaciones de Android antes del cambio.

Requisitos para nuevas aplicaciones

A partir de agosto de 2021, Google Play Console requerirá a todas las aplicaciones nuevas :
•    Publicar con el formato Android App Bundle 
•    Utilizar Play Asset Delivery o Play Feature Delivery para ofrecer activos o funciones que superen el tamaño de descarga de 150 MB. Los archivos de expansión (OBB) ya no serán compatibles con las nuevas aplicaciones.
•    Apuntar al nivel de API 30 (Android 11) o superior y ajustarlo a los cambios.

Requisitos para actualizaciones de aplicaciones existentes en Google Play

A partir de noviembre de 2021, se requerirán actualizaciones de las aplicaciones existentes para alcanzar el nivel de API 30 o superior y ajustar los cambios de comportamiento en Android 11. Las aplicaciones existentes que no reciben actualizaciones no se ven afectadas y pueden continuar descargándose desde Play Store.

Cambios para al nivel API 30 de Google Play

Mostramos un cuadro resumen de todos los cambios:

 Las aplicaciones Wear OS no están sujetas al nuevo requisito de nivel de API de destino.
Las aplicaciones aún pueden usar cualquier minSdkVersion, por lo que no hay cambios en su capacidad para crear aplicaciones para versiones anteriores de Android.

Para obtener más información sobre la transición a paquetes de aplicaciones, Google ofrece una serie de videos: Habilidades de desarrollo moderno de Android (MAD) 
 

11 tecnologías para desarrollar apps en 2021

Si uno de tus objetivos en 2021 es aprender el desarrollo de aplicaciones móviles y te preguntas cómo empezar, lee este post donde compartimos 11 tecnologías que puedes aprender para convertirte en desarrollador de aplicaciones móviles. También puede ser útil para alguien que quiera mejorar como desarrollador de aplicaciones móviles para plataformas Android e iOS.

Esta lista incluye frameworks, lenguajes de programación y plataformas, casi todo lo que necesita un desarrollador móvil.
Hemos incluido marcos de desarrollo móvil multiplataforma como Flutter y React Native, lenguajes de programación como Kotlin, Swift y Dart, y plataformas como Android e iOS, que son esenciales para cualquier desarrollador de aplicaciones móviles en 2021.

No es necesario conocer todo lo que exponemos aquí; están para que puedas elegir qué tecnologías y plataformas son adecuadas para tí. Por ejemplo, si estás interesado en desarrollar aplicaciones nativas de iOS para iPhone y iPad, entonces aprender Swift 5 e iOS 14 es una buena idea. Pero si prefieres la plataforma Android, entonces es buena opción aprender Kotlin y Android 11.

Si tu idea es desarrollar aplicaciones móviles nativas multiplataforma (aplicaciones de Android e iOS con una única base de código), entonces deberías aprender Flutter o React Native, dos de los framework líderes para crear una aplicación móvil. 

11 tecnologías para aprender los desarrolladores móviles en 2021

Lista de lo que puedes aprender para entrar en el desarrollo de aplicaciones móviles.

1. Flutter

Este es un marco excelente para desarrollar aplicaciones móviles nativas multiplataforma en 2021. Al igual que Golang, TensorFlow y Angular, Flutter también es de Google, que usa Dart (otro lenguaje de programación de Google) y proporciona SDK para desarrollar una plataforma nativa multiplataforma. 

Siempre ha sido un desafío lanzar tu aplicación a diferentes plataformas como Android, iOS y Windows Mobile, ya que necesitas mantener una base de código separada. Flutter resuelve ese problema permitiéndote crear aplicaciones móviles para dispositivos iOS y Android usando la misma base de código.
Flutter ha experimentado un gran crecimiento en los últimos 2 años y ahora es el marco número uno para el desarrollo de aplicaciones móviles. Para conocer y aprender sobre Flutter aquí.  

 

2. React Native

Es otro framework para desarrollar aplicaciones móviles multiplataforma. Utiliza React y JavaScript para producir aplicaciones móviles de alta calidad.
Es la elección correcta para todos los desarrolladores web que quieran convertirse en desarrolladores de aplicaciones móviles y ya estén familiarizados con tecnologías como JavaScript y React. 
Recursos para aprender React Native 

 

3. Kotlin

Kotlin es un lenguaje de programación de propósito general de JetBrains. Es el lenguaje de programación oficial para desarrollar aplicaciones de Android, tal como lo anunció Google hace un par de años. Es un hermoso lenguaje de programación basado en JVM y compatible con Java, otro lenguaje popular de desarrollo para Android.

Si te tomas en serio el desarrollo de aplicaciones móviles para la plataforma Android, la más popular del mundo, entonces deberías aprender Kotlin. Si necesitas un recursos para aprender busca aquí 

 

4. Swift 5.1

Swift es otro lenguaje de programación de Apple que puedes utilizar para desarrollar aplicaciones móviles para iOS (iPhone y iPad), macOS (MacBook Prob), watchOS (Apple Watch), tvOS (Apple TV) y más. Es un lenguaje de programación simple, elegante y potente, con muchas modernas.
Swift te permite escribir código seguro sin comprometer la velocidad y el rendimiento. Si te tomas en serio el desarrollo de aplicaciones móviles para productos Apple como iPhone, iPad y MacBook Pro, entonces deberías aprender Swift 5.1 en 2021. 
Recomendamos echar un vistazo a developer.apple.com  

 

5. Native Script

Native Script es un marco de trabajo gratuito y de código abierto para desarrollar una aplicación móvil tanto para Apple iOS como para la plataforma Android de Google.

Permite crear aplicaciones móviles tanto en TypeScript como en JavaScript y usando Angular  y Vuejs . Si eres un desarrollador de frontend y ya conoces marcos como Angular o Vuejs, Native Script puede ser la opción correcta para ti.

Native Script presenta una integración profunda con Angular y Vuejs y te permite escribir código en cualquier lenguaje, que se traduce a JavaScript como TypeScript o CoffeeScript.
Si necesitas más información y recursos, consulta nativescript.org  

 

6. Android 11

Ésta es la última versión de la plataforma Android (Android 12 está en pruebas). Fue lanzado el 20 de septiembre de 2020.  Si ya eres un desarrollador de Android, puedes aprender Android 11 para conocer nuevas funciones como grabación de pantalla integrada en el sistema, nuevas notificaciones de conversaciones, sección independiente del panel de notificaciones....

También puede optimizar sus aplicaciones para dispositivos plegables y otros dispositivos de pantalla grande. Si eres un desarrollador de Android o quieres aprender Android en 2021, te sugerimos que aprendas Android 11, la última versión del sistema operativo Android. Consulta los recursos en https://developer.android.com/ 

 

7. iOS 14

Esta es la última versión de la popular plataforma iOS, que impulsa al iPhone y al iPad, dos de los dispositivos más potentes. 
Viene con algunas características interesantes reclamadas por los desarrolladores durante mucho tiempo. Por ejemplo, con el SDK de iOS 14, tu aplicación puede aprovechar el modo oscuro, iniciar sesión con Apple, sincronización de datos centrales con CloudKit, PencilKit y más.

Si eres un desarrollador de iOS o quieres convertirte en un desarrollador de iOS en 2021, te sugerimos que aprendas iOS 14

 

8. Ionic

Este es otro marco para desarrollar aplicaciones móviles multiplataforma usando JavaScript. Puedes crear una aplicación para cualquier plataforma utilizando una base de código.

Ionic Framework es gratuito y de código abierto y proporciona un conjunto de herramientas de interfaz de usuario portátil para desarrollar aplicaciones multiplataforma de alta calidad para iOS nativo, Android y web. También tiene un Ionic React que aprovecha React para crear aplicaciones móviles híbridas.
Si quieres aprender Ionic en 2021, consulta ionicframework.com

 

9. Dart

Si deseas aprender Flutter para desarrollar aplicaciones móviles multiplataforma, entonces usa Dart porque es el lenguaje de programación que impulsa a Flutter.

Dart es un lenguaje de programación de Google destinado a la productividad de los desarrolladores. A diferencia de Golang, otro lenguaje de programación de Google, Dart se encuentra entre Java y JavaScript, y puedes aprenderlo rápidamente si estás familiarizado con alguno de estos lenguajes. Si quieres aprender Dart en 2021 entra en dart.dev 

 

10. Xamarin

Si deseas crear una aplicación móvil con .NET y C #, no hay mejor opción que Xamarin. Es una plataforma excelente para los desarrolladores de C # y .NET que desean inicirse en el desarrollo de aplicaciones móviles.
Al usar Xamarin, puedes crear aplicaciones de Android, iOS, tvOS, watchOS, macOS y Windows usando .NET con acceso a la API nativa. Si deseas aprender Xamarin en 2021 busca en dotnet.microsoft.com/apps/xamarin 

 


11. Vue js
Vue.js es un framework progresivo para construir interfaces de usuario en JavaScript. Como está modularizado en diferentes librerías puedes ir añadiendo funcionalidad a tu aplicación progresivamente.

Vue.js es muy fácil de aprender si ya sabes JavaScript; conseguirás desarrollar tus propias aplicaciones en muy poco tiempo.
Una de las cosas que más gustan de Vue.js es que no necesitas aprender una nueva sintaxis como JSX. Simplemente con JavaScript, algo de HTML y CSS ya podrías crear una aplicación totalmente funcional.

 

Consejo

Si deseas crear aplicaciones móviles nativas para iOS, aprende iOS 14 y Swift 5, y si deseas desarrollar para Android, aprende Kotlin y Android 11, y si deseas crear aplicaciones móviles multiplataforma aprende Vue.js, Flutter y Dart en 2021. No es necesario que los aprendas todos, elija el que se adapte a tus necesidades.
 

tecnologias desarrollo de apps