Comparaison des langages de programmation populaires

Depuis les années 1950, les informaticiens ont conçu des milliers de langages de programmation. Beaucoup sont obscurs, peut-être créés pour un doctorat. thèse et jamais entendu parler depuis. D'autres sont devenus populaires pendant un certain temps, puis ont disparu par manque de soutien ou parce qu'ils étaient limités à un système informatique particulier. Certains sont des variantes de langages existants, ajoutant de nouvelles fonctionnalités comme le parallélisme - la possibilité d'exécuter plusieurs parties d'un programme sur différents ordinateurs en parallèle.

En savoir plus sur Qu'est-ce qu'un langage de programmation?

Comparaison des langages de programmation

Il existe plusieurs façons de comparer les langages informatiques, mais pour simplifier, nous les comparerons par méthode de compilation et niveau d'abstraction.

Compilation en code machine

Certains langages exigent que les programmes soient transformés directement en code machine - les instructions qu'un CPU comprend directement. Ce processus de transformation est appelé

instagram viewer
compilation. Le langage d'assemblage, C, C ++ et Pascal sont des langages compilés.

Langues interprétées

Les autres langues sont soit Interprétée tels que Basic, Actionscript et Javascript, ou un mélange des deux en cours de compilation dans un langage intermédiaire - cela inclut Java et C #.

Un langage interprété est traité au moment de l'exécution. Chaque ligne est lue, analysée et exécutée. Devoir retraiter une ligne à chaque fois dans une boucle est ce qui rend les langages interprétés si lents. Cette surcharge signifie que le code interprété s'exécute 5 à 10 fois plus lentement que le code compilé. Les langages interprétés comme Basic ou JavaScript sont les plus lents. Leur avantage n'a pas besoin d'être recompilé après les changements et c'est pratique lorsque vous apprenez à programmer.

Parce que compilé programmes fonctionnent presque toujours plus vite qu'interprété, les langages tels que C et C ++ ont tendance à être les plus populaires pour écrire des jeux. Java et C # se compilent tous les deux dans un langage interprété qui est très efficace. Étant donné que la machine virtuelle qui interprète Java et le cadre .NET qui exécute C # sont fortement optimisés, il est affirmé que les applications dans ces langages sont aussi rapides sinon plus rapides que C ++ compilé.

Niveau d'abstraction

L'autre façon de comparer les langues est le niveau d'abstraction. Cela indique à quel point une langue particulière est proche du matériel. Le code machine est le niveau le plus bas, avec le langage d'assemblage juste au-dessus. C ++ est supérieur à C car C ++ offre une plus grande abstraction. Java et C # sont supérieurs à C ++ car ils se compilent dans un langage intermédiaire appelé bytecode.

Comparaison des langues

  • Langues compilées rapidement
  • Langue de l'assemblage
  • C
  • C ++
  • Pascal
  • C #
  • Java
  • Interprétation raisonnablement rapide
  • Perl
  • PHP
  • Interprétation lente
  • Javascript
  • ActionScript
  • De base

Le code machine est les instructions qu'un CPU exécute. C'est la seule chose qu'un processeur puisse comprendre et exécuter. Les langues interprétées nécessitent une application appelée Interprète qui lit chaque ligne du code source du programme puis le «exécute».

L'interprétation est plus facile

Il est très facile d'arrêter, de modifier et de réexécuter des applications écrites dans un langage interprété et c'est pourquoi elles sont populaires pour l'apprentissage de la programmation. Aucune étape de compilation n'est nécessaire. La compilation peut être un processus assez lent. Une grande application Visual C ++ peut prendre de quelques minutes à plusieurs heures pour être compilée, en fonction de la quantité de code à reconstruire et de la vitesse de la mémoire et du processeur.

Quand les ordinateurs sont apparus pour la première fois

Lorsque les ordinateurs sont devenus populaires dans les années 1950, les programmes étaient écrits en code machine car il n'y avait pas d'autre moyen. Les programmeurs ont dû basculer physiquement les commutateurs pour entrer des valeurs. Il s'agit d'une manière si fastidieuse et lente de créer une application que des langages informatiques de niveau supérieur ont dû être créés.

Assembleur: rapide à exécuter - lent à écrire!

Le langage d'assemblage est la version lisible du code machine et ressemble à ceci

Mov A, 45 $

Parce qu'il est lié à un processeur particulier ou à une famille de processeurs associés, le langage d'assemblage n'est pas très portable et prend beaucoup de temps à apprendre et à écrire. Des langages tels que C ont réduit le besoin de programmation en langage d'assemblage, sauf lorsque la mémoire RAM est limitée ou qu'un code à temps critique est nécessaire. Il s'agit généralement du code du noyau au cœur d'un système d'exploitation ou d'un pilote de carte vidéo.

La langue de l'assembly est le niveau de code le plus bas

Le langage d'assemblage est de très bas niveau; la plupart du code déplace simplement les valeurs entre les registres du processeur et la mémoire. Si vous écrivez un paquet de paie que vous voulez penser en termes de salaires et de déductions fiscales, ne pas enregistrer A à l'emplacement mémoire XYZ. C'est pourquoi les langages de niveau supérieur comme C ++, C # ou Java sont plus productifs. Le programmeur peut penser en termes de domaine problématique (salaires, retenues et charges à payer) et non de domaine matériel (registres, mémoire et instructions).

Programmation de systèmes avec C

C a été conçu au début des années 1970 par Dennis Ritchie. Il peut être considéré comme un outil à usage général - très utile et puissant mais très facile à laisser passer, ce qui peut rendre les systèmes peu sûrs. C est un langage de bas niveau et a été décrit comme un langage d'assemblage portable. La syntaxe de nombreux langages de script est basée sur C, par exemple, Javascript, PHP et ActionScript.

Perl: sites Web et utilitaires

Très populaire dans le monde Linux, Perl a été l'un des premiers langages Web et reste très populaire aujourd'hui. Pour faire de la programmation "rapide et sale" sur le Web, cela reste inégalé et conduit de nombreux sites Web. Il a cependant été quelque peu éclipsé par PHP en tant que langage de script Web.

Codage de sites Web avec PHP

PHP a été conçu comme un langage pour les serveurs Web et est très populaire en conjonction avec Linux, Apache, MySql et PHP ou LAMP pour faire court. Il est interprété, mais précompilé pour que le code s'exécute assez rapidement. Il peut être exécuté sur des ordinateurs de bureau mais n'est pas aussi largement utilisé pour développer des applications de bureau. Basé sur la syntaxe C, il comprend également Objets et cours.

Pascal a été conçu comme un langage d'enseignement quelques années avant C mais était très limité avec une mauvaise gestion des chaînes et des fichiers. Plusieurs fabricants ont étendu le langage, mais il n'y avait pas de leader global jusqu'à ce que Borland Turbo Turbo (pour Dos) et Delphi (pour Windows) apparaissent. Ces implémentations puissantes ont ajouté suffisamment de fonctionnalités pour les rendre adaptées au développement commercial. Cependant, Borland a affronté le bien plus grand Microsoft et a perdu la bataille.

C ++: un langage classe!

Les classes C ++ ou C plus, comme on l'appelait à l'origine, sont apparues environ dix ans après C et ont introduit avec succès la programmation orientée objet vers C, ainsi que des fonctionnalités telles que les exceptions et les modèles. Apprendre tout C ++ est une grosse tâche - c'est de loin le plus compliqué des langages de programmation ici mais une fois que vous l'avez maîtrisé, vous n'aurez aucune difficulté avec n'importe quel autre langage.

C #: Big Bet de Microsoft

C # a été créé par DelphesL'architecte Anders Hejlsberg, après son passage chez Microsoft et les développeurs Delphi, se sentiront chez eux avec des fonctionnalités telles que les formulaires Windows.

La syntaxe C # est très similaire à Java, ce qui n'est pas surprenant car Hejlsberg a également travaillé sur J ++ après son passage à Microsoft. Apprenez C # et vous êtes sur le point de connaître Java. Les deux langages sont semi-compilés de sorte qu'au lieu de compiler en code machine, ils compilent en bytecode (C # compile en CIL mais lui et Bytecode sont similaires) et sont ensuite interprétés.

Javascript: programmes dans votre navigateur

Javascript est rien comme Java, au lieu de cela, c'est un langage de script basé sur la syntaxe C mais avec l'ajout de Objets et est utilisé principalement dans les navigateurs. JavaScript est interprété et beaucoup plus lent que compilé code mais fonctionne bien dans un navigateur.

Inventé par Netscape, il a connu un grand succès et après plusieurs années dans le marasme connaît un nouveau souffle de vie en raison de AJAX; Javascript asynchrone et XML. Cela permet à des parties de pages Web de se mettre à jour à partir du serveur sans redessiner la page entière.

ActionScript: un langage flashy!

ActionScript est une implémentation de JavaScript mais existe uniquement dans les applications Macromedia Flash. Utilisant des graphiques vectoriels, il est principalement utilisé pour les jeux, la lecture de vidéos et d'autres effets visuels et pour le développement d'interfaces utilisateur sophistiquées, toutes exécutées dans le navigateur.

Basique pour débutants

De base est l'acronyme de Beginners All-purpose Symbolic Instruction Code et a été créé pour enseigner la programmation dans les années 1960. Microsoft a fait sa propre langue avec de nombreuses versions différentes, y compris VBScript pour les sites Web et le très réussi Visual Basic. La dernière version de cela est VB.NET et cela fonctionne sur la même plate-forme .NET comme C # et produit le même bytecode CIL.

Lua est un langage de script gratuit écrit en C qui inclut la récupération de place et les coroutines. Il s'interface bien avec C / C ++ et est utilisé dans l'industrie des jeux (et des non-jeux également) pour scripter la logique des jeux, les déclencheurs d'événements et le contrôle des jeux.

Conclusion

Alors que tout le monde a sa langue préférée et a investi du temps et des ressources pour apprendre à la programmer, certains problèmes sont mieux résolus avec la bonne langue.

E.G vous n'utiliseriez pas C pour écrire des applications web et vous n'écririez pas un système d'exploitation en Javascript. Mais quel que soit le langage que vous choisissez, que ce soit en C, C ++ ou C #, au moins vous savez que vous êtes au bon endroit pour l'apprendre.

instagram story viewer