Langages compilés et langages interprétés
1.
Un langage qui nécessite qu'un compilateur compile le code source en code machine avant de pouvoir l'exécuter. Généralement, il doit passer par deux étapes : la compilation et l'éditeur de liens. La compilation consiste à compiler le code source en code machine, et la liaison consiste à connecter le code machine de chaque module et la bibliothèque dépendante pour générer un fichier exécutable. (Apprentissage recommandé :Programmation PHP du débutant à compétent)
Avantages : Les compilateurs disposent généralement d'un processus de pré-compilation pour optimiser le code. Étant donné que la compilation n'est effectuée qu'une seule fois et ne nécessite pas de compilation au moment de l'exécution, les programmes en langage compilé ont une efficacité d'exécution élevée. Peut fonctionner indépendamment des paramètres régionaux. Inconvénient : Si vous devez le modifier après la compilation, vous devez recompiler l'intégralité du module. Lors de la compilation, le code machine est généré en fonction de l'environnement d'exploitation correspondant. Il y aura des problèmes lors de la transplantation entre différents systèmes d'exploitation. Différents fichiers exécutables doivent être compilés en fonction de l'environnement du système d'exploitation en cours d'exécution. Représente les langages : C, C++, Pascal, Object-C et le nouveau langage Swift d'Apple récemment populaireLangages interprétés
.Les programmes de langage interprétés n'ont pas besoin d'être compilés, ce qui permet d'économiser une étape par rapport aux langages compilés. Les langages interprétés ne traduisent que ligne par ligne lors de l'exécution du programme.
Avantages : Il a une bonne compatibilité avec les plateformes et peut fonctionner dans n'importe quel environnement, à condition qu'un interpréteur (machine virtuelle) soit installé. Flexible, vous pouvez le modifier directement lors de la modification du code, et il peut être déployé rapidement sans temps d'arrêt pour maintenance. Inconvénients : il doit être expliqué à chaque exécution et les performances ne sont pas aussi bonnes que celles des langages compilés. Représente les langages : JavaScript, Python, Erlang,PHP, Perl, Ruby
3. Langages mixtes
Étant donné que les types compilés et interprétés présentent chacun des défauts, certaines personnes pensent donc à intégrer les deux types, en prenant le meilleur et en rejetant les scories. Des langages semi-compilés sont apparus. Par exemple, C# n'est pas directement compilé en code machine mais en code intermédiaire lors de la compilation. La plate-forme .NET fournit un runtime de langage intermédiaire pour exécuter le code intermédiaire. Le runtime de langage intermédiaire est similaire à la machine virtuelle Java. Une fois .net compilé en code IL, il est enregistré dans une DLL lorsqu'il est exécuté pour la première fois, JIT le compile en code machine et le met en cache dans la mémoire, et l'exécute directement la prochaine fois. Java génère d'abord du bytecode, puis l'interprète et l'exécute dans la machine virtuelle Java. À proprement parler, les langues hybrides sont des langues interprétées. C# est plus proche d'un langage compilé.PHP est un langage interprété :
Cependant, leurs similitudes résident principalement dans le format sous-jacent : ils ne sont tous les deux que du texte. Au lieu d'ouvrir le fichier html dans un navigateur Web, vous pouvez ouvrir le fichier html dans le Bloc-notes (programme Bloc-notes) ou dans un environnement de développement intégré comme Eclipse, ou dans un éditeur de ligne de commande comme vi ou emacs. De même, le code PHP est également composé de texte. Une fois que vous avez un script, vous devez laisser le programme PHP interpréter le script. L'interpréteur PHP est un logiciel qui s'exécute sur votre serveur Web et peut lire et comprendre le contenu du script. Il envoie le code interprété au serveur Web et indique au serveur où sauter ensuite ou comment traiter le champ du formulaire de l'utilisateur. article. N'oubliez pas que votre script n'est qu'un fichier texte qui n'est interprété que ligne par ligne à chaque accès au script.Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!