logo-cooptalis-2
Entreprise ? Par ici
Contact
Talent ? Par ici
Contact
(SizeLimitingPyMap: {back_to_blog=Revenir au blog, by=par, read=Lecture :, min=min})
Revenir au blog

Langages informatiques : d'incontournables aux négligés, suivez le guide

Edmond Kean
par Edmond Kean Lecture : 9min
LinkedIn Icon Facebook Icon Twitter Icon

Suivez le guide pour découvrir ou redécouvrir les langages informatiques, outils essentiels du développeur. Des incontournables aux négligés en passant par les populaires ou les plus anciens, vous trouverez de quoi compléter vos connaissances.

Si au mot Python tu n’imagines pas jungles luxuriantes ou prédateurs dangereux…

Si au doux nom de java tu n’esquisses pas un léger sourire en pensant aux soirées familiales où papi et mamie chantent à tue-tête « c’est la javaaaa bleuuuueee »…

Si pour toi Swift n’évoque ni un produit ménager ni le nom de la chanteuse pop Taylor Swift…

Si les mots Ruby et Perl n’évoquent en aucun cas chez toi des pierres précieuses…

Bon sang, mais c’est bien sûr, tu es un développeur informatique… ou en passe de l’être ! Et tu n’es pas le seul ! Vous êtes plus de 26 millions de développeurs dans le monde et ça fait une sacrée tribu (de quoi faire des sacrées soirées… « c’est la jaaavvva bleuuuee »… Ou pas ! C’est toi qui vois).

Alors, bien entendu, les lignes de code n’ont plus aucun secret pour toi ?

 Langages informatiques  ou de programmations sont ton BA-BA ? Tu connais par coeur les différents noms des langages informatiques ? Leur histoire, les plus importants ou les plus appréciés et les plus détestés ?

Non ? Pas forcément ? C’est pas un problème. On est là pour ça !

On va se faire un tour d’horizon de ces langages et te (re)donner quelques éléments connus et moins connus.

Alors bienvenue chez toi grand scribe et aventurier du codage. Entrons ensemble dans l’univers des langages de programmation pour un petit passage en revue.

 

Un développeur doit maîtriser un ou plusieurs langages de programmation selon les différents projets qu’on lui propose. Voici une sélection rapide pour fournir quelques repères simples et reconnus par les développeurs du monde entier.

Définition : "Un langage de programmation est un vocabulaire et un ensemble de règles grammaticales permettant d'ordonner à un ordinateur ou à un appareil informatique d'effectuer des tâches spécifiques.”

Les langages incontournables, nos VIP : Python, Javascript et C/C++/C# 

Tous les classements les plébiscitent en tête :

  • Python (1991)

Voilà le langage le plus populaire qui a su détrôner depuis peu des champions comme java ou C. Créé en 1991 par Guido Van Rossum, véritable couteau-suisse du développeur, Python est un langage de programmation de haut niveau et open source. C'est une alternative à Perl et à Ruby, utilisée pour l’intelligence artificielle (IA) et la science des données (Data science), l’apprentissage automatique (Machine Learning) mais aussi en internet des objets (IoT), il correspond aux besoins et tendances du moment. 

70% des développeurs Machine Learning et Data scientist déclarent utiliser Python. Plus de 80% des sites web utilisent Python. Il est utilisé par Google, Yahoo et Spotify. 

Anecdote amusante, le nom viendrait du célèbre groupe d’humoristes britanniques et de leur série de télévision “Monty Python Flying Circus”.

  • Javascript (1995) 

D'abord nommé LiveScript, Javascript est un des langages les plus connus des développeurs. Créé en 1995 par Brendan Eich de Netscape (le futur Mozilla), il est considéré comme très flexible avec une large gamme d’applications. JavaScript permet d'intégrer des scripts entre les éléments HTML de la page, généralement pour ajouter une animation ou un effet visuel. JavaScript a deux fonctions : côté web dynamisant les sites, mais aussi côté serveur avec NodeJS / Deno pour concevoir des applications back-end. Il y aurait plus de 16 millions de développeurs utilisant Javascript.  Facebook, Google, Microsoft, Gmail, Adobe Photoshop, Mozilla Firefox, etc. l’utilisent. 

C/C++/C#

Le langage C et ses différentes évolutions font partie des plus vieux langages de programmation et réputés très stables.

  • C (1973)

Créé dans les années 70 par  Dennis Ritchie, un employé des laboratoires Bellle langage C succède à B, qui succède à BCPL. Il est destiné au départ à programmer le système d’exploitation UNIX et est devenu rapidement universel grâce à sa portabilité et ses performances. Le langage C reste populaire pour être fondamental car il donne un accès direct au matériel. Tout comme Python, le langage C est portable, signifiant que tous les systèmes d’exploitation peuvent le supporter. Cependant des failles de sécurité liées à la mémoire lui sont reprochées.

  • C++ (1981-1986)

Créé par Bjarne Stroustrup toujours aux laboratoires Bell, le C++ est une amélioration du C. Son langage est orienté objet (POO). Il est répertorié régulièrement dans les 10 meilleurs langages informatiques depuis 1986. 

Il est utilisé dans Microsoft Office, Adobe Photoshop mais aussi des moteurs de jeux et autres logiciels.

  • C# (2000) (C-sharp)


Créé par Anders Hejlsberg pour Microsoft, C# prend sa source dans la famille de langages C. Il est facilement praticable pour les programmeurs en C, C++, Java et JavaScript. Tout comme le C++, le langage de programmation C# a vu le jour pour tenter de corriger les failles du C. Il est le langage de base de la plateforme .NET pour programmer des logiciels utilisable à distance sur Internet notamment. Mais au contraire du C++ plus complexe, C# est très facile et tout aussi polyvalent : développement des logiciels, des applications web, des widgets, la conception de jeux vidéo, etc. Le C# est le langage de référence pour le développement d’applications Windows (Microsoft).

Tendances : les cinq principaux langages que les développeurs en 2021 prévoient d'adopter ou vers lesquels ils prévoient de migrer sont Go, Kotlin, TypeScript, Python et Rust.

 

 

AdobeStock_173952669

Les langages appréciés, nos In : Rust, Clojure et TypeScript

Ils ne sont pas forcément les plus utilisés mais les développeurs les plébiscitent pour l’avenir ou pour le plaisir d’usage :

  • Rust (2006-2011)

Rust est un langage système créé originellement par Graydon Hoare en 2006 puis repris par Mozilla en 2009. Il est orienté objet mais s’utilise plus en programmation  procédurale (“dans la programmation procédurale, les programmes sont basés sur des fonctions, et les données peuvent être facilement accessibles et modifiables, alors qu’en programmation orientée objet, chaque programme est constitué d’entités appelées objets, qui ne sont pas facilement accessibles et modifiables”).

Il se veut plus sûr pour le Web tout en tirant mieux profit des processeurs actuels. Populaire pour la programmation de systèmes, il veut ainsi remplacer C sur ce domaine. Rust est apprécié et novateur grâce à sa gestion de la mémoire où la possession de l’information est unique (ownership). Il s’envisage aussi comme deuxième langage après le C pour le développement du noyau Linux, en partie parce qu'il peut aider à éliminer les bugs de sécurité liés à la mémoire. Il est utilisé par Mozilla et Microsoft.

  • Clojure (2007) 

Rich Hickey est le créateur du langage  Clojure.Il s’agit d'un dialecte LISP moderne pour la programmation fonctionnelle s’exécutant sur la JVM (Java Virtual Machine), donc avec toutes les bibliothèques traditionnelles de Java, puis orienté vers la programmation concurrente. Il est ainsi facile de profiter de la puissance de LISP dans une infrastructure existante. Clojure est pratique car même s’il s’utilise surtout en back-end , il peut aussi s’utiliser en front-end. Le nom Clojure est un jeu de mot entre “closure” (élément mathématique ou un résultat est toujours identique et défini) et les lettres C, L et J en référence à C#, Lisp et Java, les trois langages qui ont influencé son créateur.

  • TypeScript (2012)

TypeScript est un langage informatique créé par Microsoft et co-crée par Anders Hejlsberg, l’inventeur du langage C#, et récent puisqu’il a vu le jour en 2012. Libre et open source, il a été créé en vue de corriger les défauts de JavaScript. TypeScript est donc une version alternative de JavaScript avec un système de typage qui aide les développeurs à coder plus efficacement de grandes applications Web front-end. Il s’agit d’un langage dynamique, dont le code est transcompilé en JavaScript. Cela lui permet d’être déchiffré par n’importe quel navigateur. Que l’on soit débutant ou un pro de la programmation, il est très facile de coder en TypeScript. Il est utile pour tous types de projets: programmer des logiciels, des sites web, des applications web, etc.

Les plus faciles à apprendre, la base 

 

  • Python

Avec ses nombreuses bibliothèques et sa communauté importante d’utilisateurs très active pour vous aider dans son apprentissage, c’est une valeur sûre. C’est le langage avec lequel commence la majorité des débutants en code informatique. Son côté intuitif en fait un langage informatique apprécié car facile à apprendre, à lire et à écrire. Très pratique, car en apprenant Python, vous pourrez créer des solutions pouvant fonctionner sous iOS, Windows et Linux.

  • HTML(5) et CSS(3)

Si l’on veut s'orienter vers le développement d’une application web, le binôme se révèle essentiel. Ce sont 2 langages, ou bases de langages, complémentaires qui représentent le BA-BA du développement web. 

Les bases du HTML(5) sont réputées comme pouvant s’apprendre en quelques jours. HTML a pour rôle de structurer la page web et permet ainsi de constituer son squelette. Il est donc un outil de base pour tout programmeur et c'est sur cette base que viendront s’ajouter des éléments graphiques et visuels.

C’est à cette étape que le CSS(3) intervient : il est le styliste pour sites web et concerne donc l’apparence du site. On peut facilement en apprendre les fondamentaux en quelques semaines par le biais de tutoriels en ligne, de livres ou d'autres ressources d'auto-apprentissage. Les programmes d'initiation au développement web et les cours universitaires en ligne enseignent le CSS.

  • Javascript

Même si le HTML et le CSS sont très utilisés pour le développement Web, JavaScript reste un langage populaire et demandé car pouvant être sollicité pour différents projets : applications mobiles, serveurs, sites web, etc. Il est facile à apprendre et ne nécessite aucune compilation. Avec ses bibliothèques graphiques 2D et 3D et les fonctionnalités avancées de HTML(5), Javascript est utilisé dans le développement des jeux vidéo sur navigateur.

Tendance : les cinq principaux langages que les développeurs apprennent en 2021 sont le JavaScript, le Python, le TypeScript, le Java et le Go.

AdobeStock_236627397

La préhistoire des langages de programmation

Celui qui ne sait pas d'où il vient ne peut savoir où il vaOtto von Bismarck

  • Ada Lovelace (1843) 

Bien avant l’apparition des ordinateurs, Ada Lovelace, de son nom complet Augusta Ada King, comtesse de Lovelace (1814-1852) est à l’origine du premier algorithme exécutable par une machine, processus logique d'exécution d'un programme. Cet algorithme fut conçu pour la machine à différences puis machine analytique du mathématicien Charles Babbage, pour lequel elle travaillait après avoir été son élève, dont les concepts seront à l’origine des premiers ordinateurs.

Fin des années 70, le département de La Défense américain demande à plusieurs développeurs de créer un langage de programmation qui serait la norme pour le futur. Le langage choisi parmi les options fut nommé Ada (1980-1983) en hommage à la comtesse. Il est utilisé encore aujourd’hui en aéronautique, en défense ou pour les systèmes en temps réels.


  • Le PlanKalkül (1941-1945) 

Le premier langage informatique de haut niveau fut conçu dans les années 40 par  Konrad Zuse, pendant la seconde guerre mondiale, mais ne fut publiée qu’en 1948 pour des raisons de guerre et de temps (l’inventeur se consacrant à son ordinateur Z4). Langage méconnu, il serait selon certains l’ancêtre des langages orienté objet (POO) et permettait de créer des procédures avec la possibilité de répéter à plusieurs reprises des séquences de codes. 

  • Le langage de l’assemblée (ASM 1949)

Les programmes de l’EDSAC (calculateur automatique du délai de conservation électronique qui est le premier calculateur à programme enregistré), étaient rédigés en utilisant des mnémoniques alphabétiques d'une lettre pour chaque instruction. La traduction était alors faite à la main par les programmeurs, une opération longue, complexe et source d'erreurs.


Puis dans les années 50, les trois premiers langages de programmation modernes sont apparus (Fortran, Lisp et Cobol)

Les anciens langages de programmation à ne pas négliger : 


  • Le Cobol (1959)

Né en 1959, le Cobol ou COmmon Business Oriented Language (langue commune axée sur les affaires), était un projet soutenu par le département américain de La Défense (Department Of Defense) qui incluait un consortium de fournisseurs informatiques dont IBM, le Short Range Committee dans lequel on retrouve entre autres Grace Hopper qui avait défini Flow-Matic, un langage compilé dans les années 50.  

Le langage Cobol est un langage procédural classique destiné à la gestion d’entreprise. Pendant 20 ans, Cobol sera le langage le plus utilisé au monde. Aujourd’hui encore, il reste le langage le plus important au niveau mondial pour le secteur bancaire ou les services financiers voire les systèmes administratifs. 

Or celui-ci, trop ancien, n’est quasiment plus enseigné en université. Il s’avère donc désormais difficile de trouver des développeurs parlant encore le Cobol. Donnant ainsi des inquiétudes aux entreprises qui l’utilisent toujours : car, pour les services financiers et bancaires, faire la transition vers d’autres langages plus récents serait un coût et une insécurité trop importante. De quoi apporter aux développeurs parlant cette langue les moyens de se faire payer correctement vu la rareté et les besoins urgents.  

(Moment culture geek : quelques lignes de code écrites en cobol se trouvent dans le film de science-fiction Terminator réalisé par James Cameron en 1984)

  • Lisp (1958-1960)

Né aussi en 1959, Lisp ou LISt Processing (traitement de listes) fut inventé par John McCarthy du MIT (Massachusetts Institute of Technology). C’est un langage fonctionnel de traitement de liste, très populaire dans les années 60/70 pour la recherche en intelligence artificielle (IA). Plus ancienne famille de langages de programmation, le premier vrai Lisp utilisé était Common Lisp. Les langages Lisp sont encore aujourd’hui utilisés dans de nombreux domaines comme la programmation web, la formation informatique et dans la finance. Des entreprises comme Accélération ou Boeing utilisent encore Lisp.

  • Fortran (1954-1958) 

Lancé en 1954, FORTRAN ou mathematical FORmula TRANslator system (formule de transfert) est un langage crée par John Backus et d’autres chercheurs chez IBM. C’est le plus ancien langage de programmation connu encore utilisé aujourd’hui. Son utilité pour les calculs scientifiques et mathématiques (NASA) ou les statistiques de haut niveau reste encore une référence actuellement. On le retrouve dans certains super ordinateurs les plus performants au monde. En 2020, il est réapparu à la 20e place des langages de programmation les plus populaires. Ce retour s'explique par l'énorme besoin de calcul scientifique que seul Fortran est encore capable d’assurer.

Tendances : les langages les moins aimés des développeurs en 2021 sont le Cobol, le VBA, le Matlab et l'Objective-C.

Voilà, ca y est, nous avons remonté le temps et bouclé ce rapide tour d’horizon pour orienter et donner des pistes pour ceux qui veulent devenir développeurs ou le sont déjà. Avec l’évolution des technologies et des langages, il sera utile de revenir régulièrement sur cet état des lieux qui ne cesse de bouger dans un domaine aussi important.

Car notre Baromètre des métiers de l’IT  ne s’y trompe pas, c’est la famille des développeurs qui reste en tête des demandes pour les entreprises et il était bien naturel d’évoquer ensemble leurs outils de prédilection : les langages de programmation.

Alors si tu es de cette famille ou veut l’intégrer, si tu recherches un poste, n’hésites pas et consultes nos offres.

 

(String: Lire plus)