Quel langage de programmation choisir en 2019<span class="wtr-time-wrap after-title"><span class="wtr-time-number">14</span> min read</span>
Schéma des langages de programmation à choisir

Quel langage de programmation choisir en 201914 min read

Quand on commence à programmer, on cherche souvent le langage de programmation “parfait” qui répondras à tout vos besoins, laissez moi vous dire qu’il existe , ça s’appelle votre imagination. Non sérieusement, vous pourriez créer un langage de programmation parfait qui réponds à tout vos besoins mais en attendant, vous allez devoir choisir parmi la liste des langages existants.

Mon histoire personnelle

J’ai décidé de programmer il y a déjà quelque temps parce que je voulais créer des jeux-vidéos, et devinez quoi, je n’ai jamais crée de jeux vidéos, non pas parce que c’est trop difficile mais parce que je suis tombé amoureux de la programmation et que je préfère ça au game design, on as tous une raison différente de se mettre à la programmation, et dans ma quête d’apprendre à créer des jeux vidéos, je n’ai pas réussi à me retrouver et à choisir un langage, ce qui fait que j’ai réellement appris en premier le langage python, un langage totalement inadapté pour créer des jeux à moins d’être un expert , hors je n’étais pas un expert. J’ai donc appris python et je me suis rendu compte que je ne pouvais pas créer de jeux vidéos.

J’ai été en parti par ma faute mal renseigné sur internet et j’ai appris un langage qui n’allait pas me servir pour créer ce que je voulais, ce n’était pas un problème car entre temps je suis tombé amoureux de la programmation mais à cause de ce mauvais choix, je n’ai jamais atteins mon but initial. Quelques années après j’ai finalement appris le langage nécéssaire à la création de jeux, C++ qui était d’ailleurs bien plus complexe que python. Au final à cause de mauvais renseignements , je n’ai jamais pu créer de jeux et c’est ce que je souhaite éviter pour vous.

Quels sont les langages de programmation disponibles ?

Depuis la démocratisation de l’ordinateur, énormément de langages de programmation se sont succédé et il est impossible de tous les lister. Bien sur au début les langages de programmation était rudimentaires, ils servaient a décrire précisément les instructions que le processeur devait éxécuter. C’est ce qu’on appelle le Assembler (ASM). Certaines personnes l’utilisent encore car ça reste le langage le plus rapide à ce jour, il est possible d’optimiser n’importe quoi en ASM mais sa difficulté d’apprentissage et de mise en place est collosale. Aujourd’hui les personnes qui utilisent le plus ASM sont les hackeur afin de créer des exploitations invisibles. Je ne rentrerai pas plus dans les détails mais vous pouvez rechercher shellchode pour avoir plus d’informations à ce sujet.

Après les premiers compilateurs sont apparus, ce sont des programmes permettant de transformer du code en binaire, la programmation que l’on connait aujourd’hui était née. Idem , une génération de langages se sont succédés, les plus notables étant Fortran et C, deux langages encore utilisés aujourd’hui. Les langages compilés sont très complexes mais permettent de créer les programmes les plus rapides possibles. Dans les années 90 sont apparus les langages interprétés tel que PERL , PHP ou python (Oui , ça fait beaucoup de “p”) à la différence des langages compilés, les langages interprétés sont traduis directement en langage compréhensible par l’ordinateur grâce a un interpreteur, ça as plusieurs avantages, déjà le langage deviens beaucoup plus simple car tout les aspects technique comme la gestion de mémoire sont supprimés, ensuite le langage deviens portatif et disponible sur plusieurs plateformes.

Néanmoins ces langages interprétés ont la fâcheuse tendance a être lents, ce qui n’est pas adapté pour les programmes demandant beaucoup de calculs.

Langages interprétés ou langages compilés ?

Langages compilés :

Avant même de décider quel langage de programmation vous souhaitez apprendre, vous devez choisir si vous voulez vous orienter vers un langage interprété ou compilé, pourquoi ? Et bien parce qu’ils ne sont pas du tout fait pour la même chose. Les langages compilés sont fait principalement voir absolument pour créer des programmes sur un ordinateur, ils sont bien plus puissants que leur homonymes et sont aussi bien plus complexes, cela peux aller du simple programme comme le bloc note a un système d’exploitation tout entier comme Windows (les deux programmes sont écrits en C ). Les langages compilés demandent de gérer des choses comme la mémoire RAM ou éviter de potentielles failles de sécurité. Ils ne sont jamais a moins d’être fou , utilisé dans le web , ils sont bien trop complexes à mettre et créer un serveur web ça demande beaucoup beaucoup de code, le jeu n’en vaut pas la chandelle, il y a peu de choses à gagner et beaucoup à perdre.

Les langages compilés sont à choisir si vous voulez créer des logiciels sur des ordinateurs ou des installations embarquées comme arduino ou raspery PI. Etant donné qu’ils sont en binaire ils ne prennent pas de place et leur temps d’execution est bien plus avantageux que les langages interprétés

Langages interprétés

En ayant lu ça , vous vous dites sûrement : “si je fais du web je prends un langage interprété et sinon un langage compilé” , et bien c’est vrai que ça pourrait fonctionner mais ce n’est absolument pas ce que je recommanderai. Certains langages interprétés fonctionnent très bien pour créer des logiciels.

J’ai dis que les langages compilés permettaient d’avoir des performances de calcul incroyables, mais sachez que la plupart des programmes ne nécessitent pas énormément de puissance de calcul, aujourd’hui tout se fait dans le cloud et les programmes ne sont pour la plupart plus que des protocoles qui vont envoyer et recevoir des requêtes , surcouche d’une interface graphique. Comprenez bien que la pluspart des programmes ne nécéssitent pas de calcul intensif et même si vous devez faire du calcul a moins de pousser le processeur à fond, un langage interprété optimisé en calcul peux faire le travail.

Les langages interprétés conviennent a 80% des utilisations de nos jours, concrètement, a moins que vous n’ayez besoin de faire de gros calculs , de créer un système d’exploitation ou de travailler sur des petites installations type Arduino / Raspery Pi, vous pouvez utiliser un langage interprété.

Si vous devez choisir un langage compilé

Si vous décidez de choisir un langage compilé , sachez que ça va être plus compliqué, mais c’est tout à fait possible et vous serez capable de créer des logiciels d’une qualité incroyable. Voyons les différents langages disponibles :

  • C : Le langage parent de tout les langages que l’on utilise actuellement, tout les langages interprétés ont une base plus ou moins grande de C , c’est le langage de Windows, linux et MacOS. C’est le langage le plus utilisé au monde, non pas en nombre de programmeurs mais en nombre d’installations. Tout les systèmes d’exploitation plus la majorité des programmes de base donne un nombre gigantesque d’installations.
  • C++ C’est un superset de C, derrière ce terme barbare se cache quelque chose de simple, c’est une amélioration du langage C, est ce que ça veux dire que c’est mieux ? Non, il y a plus de fonctionnalités mais le langage est plus lent et plus lourd, on utilise C++ pour des logiciels un peu moins vitaux que C
  • Fortran , un vieux langage de programmation puisqu’il date de 1954, c’est le premier vrai langage compilé , il as inspiré bien d’autres langages dont le C, finalement on peux le voir comme le père des langages. Le truc c’est que fortran est extrêmement complexe pour au final gagner très peu de performances par rapport au C, il est un peu plus rapide mais clairement pas assez pour le préférer au C.
  • Pascal , un langage crée à la base pour apprendre l’algorithmique , il est peu utilisé actuellement mais fonctionne bien pour faire des opérations mathématiques et du calcul intensif, si vous cherchez a créer des algorithme de calcul, Pascal est une alternative viable a C ou C++
  • PureBasic , un autre langage compilé plutôt rapide et portable mais beaucoup moins développé que C / C++ ou Fortran.

Je vous recommande clairement de choisir entre C et C++, les autres langages sont beaucoup moins accessibles, choisir C ou C++ vous permets d’être sur d’avoir une documentation stable et des tutoriels de qualité. Pour choisir entre les deux, je vous recommande de vous poser une simple question, si votre application doit être portative , petite et extrement rapide , partez pour C, dans tout les autre cas , C++ est une meilleure solution.

Quels choix pour les langages interprétés ?

Les langages interprétés sont bien plus nombreux, et il en existe pour chaque besoin, je pense que la première chose à définir c’est , allez vous faire du web ? front end ou back end ?

Commençons par le plus simple, le cas ou vous ne voulez pas faire de web. Vous allez donc vouloir un langage capable de tout faire, mais qui n’es pas spécialement optimisé pour le web, et bien dans ce cas je vous recommande le langage avec la popularité la plus croissante ces dernières années, Python, c’est un langage simple d’accès mais permettant de faire de grandes choses, des intelligences artificielles, du web scrapping ou encore des logiciels. C’est le langage couteau suisse par excellence, c’est d’ailleurs mon premier langage de programmation et je le recommande pour commencer, en plus de cela si vous décidez un jour de faire du web, python le permets grâce a certaines technologies comme Django ou Flask.

J’aimerai faire une petite parenthèse sur java, c’est un langage plus rapide que les autres langages interprétés existants mais il possède tout les désavantages des langages compilés en plus d’être très lourd et d’avoir un temps de développement très (très très ) long. Java c’est le langage des entreprises et c’est un bon choix si vous voulez intégrer une boite. Mais en Freelance ou en tant qu’entrepreneur, c’est un mauvais choix

Si vous voulez faire du web

Alors la , on as le choix entre PHP , ruby , python ou encore javascript, ce dernier est un peu spécial car il permets de créer à la fois la partie graphique d’un site web et la partie bases de données, donc si vous voulez créer un site web seul de A à Z, partez sur javascript c’est une valeur sûre et vous n’aurez besoin d’apprendre qu’un seul langage, et donc de devenir fullstack

Maintenant si vous voulez faire du web back-end c’est à dire gestion du serveur et des bases de données, vous pouvez choisir javascript aussi car ça reste extrêmement performant et ça vous permettras aussi de créer des logiciels plus tard ainsi que la partie graphique d’un site web. Maintenant si vous êtes réticents à apprendre javascript ou que vous voulez maîtriser plusieurs langages, il reste PHP, Python , Ruby et Java

On as vu que Java ce n’est pas l’idéal pour ce qui est en dehors du web, et bien pour le web c’est pareil, c’est très lourd et ce n’est profitable qu’aux grosses entreprises, je ne le recommande absolument pas. Concernant Ruby , c’est un langage très très très lent, et de moins en moins utilisé, il est d’ailleurs souvent qualifié de langage de Hipster pour les gens qui n’aiment pas les langages classiques. Ce n’est clairement pas ce que je recommande

Il nous reste donc PHP , Python et javascript, la le choix est plus compliqué, si vous voulez faire des logiciels , oubliez PHP, c’est un langage 100% web et vous ne pourrez jamais l’utiliser autre part. Néanmoins PHP est le langage le plus utilisé en terme de site web et c’est la base de CMS comme wordpress , connaître PHP signifie pouvoir travailler sur ces plateformes et vendre vos programmes. Ce qui est une réelle opportunité puisque ça rapporte beaucoup d’argent. PHP est à envisager si vous voulez travailler sur les CMS ou si vous voulez être free lance et toucher un maximum de site webs. Ce n’est pas le langage le plus efficace ou le plus intéressant mais c’est le plus utilisé.

Python ou javascript ont fait leur apparition tardivement sur le web, ce sont de réelles opportunités et de plus en plus de programmeurs décident de créer des sites avec ces langages. De grandes entreprises utilisent javascript ou python (surtout javascript ) pour gérer leur serveurs car se sont des langages bien plus rapide et modulable que PHP. Mais comment choisir entre les deux ? Et bien j’ai une technique très simple, si vous voulez faire uniquement du web partez sur javascript, si vous voulez toucher un peu a la programmation logiciel partez sur python.

Si il n’y avait qu’un seul langage à retenir

Après avoir appris 8 langages de programmation, je peux vous dire que javascript me semble être le meilleur choix pour un débutant NodeJS permets de faire des serveurs et javascript classique des interfaces pour le web. Des outils comme Electron permettent même de créer des logiciels. Avec le temps javascript est devenu polyvalent, pas autant que python mais Javascript as le gros avantage de permettre de designer des site web et donc de tout faire seul de A à Z. C’est d’ailleurs ce qu’on appelle un développeur fullstack, une qualité très recherchée puisqu’il peux seul, faire le travail de deux personnes.

Il est important de comprendre que la popularité d’un langage va vous permettre de progresser plus ou moins vite, plus la communauté est grande, plus il y a de travail disponible et de documentation, plus il y a de personnes pour vous aider ou de personnes avec qui vous pouvez discuter, afin que vous vous rendiez compte, voici une liste des langages de programmation triés par popularité

Popularité des langages de programmation

Notez que je n’ai pas parlé de l’html et du css car ce ne sont pas des langages de programmation a proprement parlé mais des langages de structuration permettant de créer un site internet. Il n’y a pas d’algorithmique donc ce ne sont pas des langages de programmation

Conclusion

Si cet article vous as plu, vous pouvez vous abonner à ma newsletter pour recevoir le guide GRATUIT Ultime pour bien débuter la programmation

Vous abonner à notre newsletter

* champ requis

Laisser un commentaire

Fermer le menu
×
×

Panier