Quelles sont les tendances des langages de programmation les plus demandés dans les SI ?

Quelles sont les tendances des langages de programmation les plus demandés dans les SI ?

Il peut sembler un peu tiré par les cheveux de penser que les langages les plus demandés en 2020 seront les mêmes que ceux qui triompheront en 2021. Toutefois, si l’on examine les tendances et les modèles de l’indice TIOBE, il semble que les changements ne soient pas radicaux d’une année à l’autre.

Les langages les plus populaires chez le développeur web

Prenons l’exemple des cinq langues les plus populaires en 2020 selon l’indice TIOBE. La liste comprend des langages aussi connus que C, Java, Python, C++ et C#. À l’exception de Python, les quatre autres figuraient déjà dans le TOP 5 en 2015 et 2010. De plus, si l’on compare l’indice 2020 et 2019, le seul changement se situe entre C et Java, qui échangent leur place dans le classement.

Mais si l’on descend dans la liste, on constate une augmentation de la popularité de certains langages de, bien qu’ils ne soient pas encore parmi les premiers. R, par exemple, se distingue, passant de la 19e à la 9e place en un an. Au cas où vous ne le sauriez pas, R est un langage spécialisé dans les graphiques et le calcul statistiques. Il est sous licence libre GNU et a été développé en 1993 par Bell Labs, anciennement propriété d’AT&T et maintenant propriété de Lucent Technologies.

Les autres langages qui ont fait un grand bond en avant sont Swift et Perl. Le langage d’Apple, lancé en 2014, bondit de la 16e à la 12e place, tandis que Perl (1987) passe de la 20e à la 13e place.

Nous avons mentionné le TOP 5 brièvement parce qu’il n’est pas nécessaire de les présenter. Java est toujours un langage utilisé dans les applications professionnelles ou de recherche grâce à sa polyvalence et à la facilité de programmation dans ce langage. En outre, il reste le langage officiel d’Android, même s’il accorde de plus en plus d’importance à Kotlin. À titre de curiosité, Kotlin est classé 34e dans l’indice TIOBE.

Conclusion

Depuis des années, Python est devenu un langage de référence, notamment pour le développeur web dans le traitement des données et dans des domaines de recherche en plein essor comme lintelligence artificielle ou l’apprentissage automatique.

Comment savoir si votre projet est adapté au Développement en Architecture Microservices ?

Comment savoir si votre projet est adapté au Développement en Architecture Microservices ?

Les applications développées en microservices procurent de nombreux avantages. Les utilisateurs jouiront entre autres d’une grande robustesse. De même, il sera plus facile de se lancer dans la maintenance, de par l’indépendance des services entre eux. Au vu des atouts, une entreprise peut envisager le projet. Elle devrait néanmoins connaître ses conditions. 

Le découpage en blocs fonctionnels

Le principe fondamental d’une architecture microservices est que chaque micro service répond à une fonctionnalité métier, et une seule. Il y a donc un découpage en blocs fonctionnels à faire de l’application à réaliser. Plus le projet est d’importance, plus ce découpage, à condition qu’il soit bien fait (pas ou peu d’interdépendance), accélère l’indépendance du développement, du test et du déploiement de ces microservices. La question peut se poser sur des projets de petite taille.

Beaucoup de microservices = gestion plus complexe ?

La question peut être posée dès lors que l’application finale se constitue de beaucoup de microservices, dont il faut gérer leur intégration et leur répartition dans une architecture physique capable de digérer l’exécution parallélisée de ses microservices. Dans l’hypothèse où il existe des dépendances entre les services, les mises à jour des services peuvent être source de complexité tant sur le plan des tests (pour revérifier une chaîne de microservices dépendants) que sur le plan du déploiement.

Une infrastructure adéquate

La gestion de la mémoire avec une mise en cache, une architecture distribuée restent des points cruciaux dans la mise en place d’une application orientée microservices. Par ailleurs, à l’heure où toutes les entreprises sont concernées par la cybersécurité, un nombre important de microservices peut accroitre une vulnérabilité face à la menace. Il y a donc un travail important de dimensionnement des ressources physiques, et de vérification des potentielles défaillances au niveau de chaque service.

Certaines peuvent être de haut niveau et abstraites, lorsqu’une personne utilise par exemple une remarque sarcastique pour transmettre une information. Pour bien saisir le langage humain, il faut comprendre non seulement les mots, mais aussi comment les concepts sont reliés pour transmettre le message souhaité.