Ordinateurs commandes de lecture à partir d'un langage machine écrit en binaire , c'est à dire , de longues chaînes de zéros et de uns . Alors que les ordinateurs peuvent lire cette langue de manière efficace, la plupart des programmeurs humains ne peuvent pas. C'est pourquoi les programmeurs travaillent dans un langage de programmation qu'ils peuvent comprendre , qu'ils traduisent ensuite dans la langue de la machine , l'ordinateur peut comprendre. Alors que de nombreux langages plus récents utilisent des interprètes qui traduisent de l'un à l'autre comme le programme s'exécute, les langages de programmation plus utilisés compilateurs qui ont fait cette traduction entièrement avant de l'ordinateur exécuté le programme. Avantage: Autonome et efficace
Un avantage majeur des programmes qui sont compilés , c'est qu'ils sont des unités autonomes qui sont prêts à être exécutés. Parce qu'ils sont déjà compilés en langage machine binaire , il n'ya pas de seconde application ou package que l'utilisateur doit se tenir à jour . Si un programme est compilé pour Windows sur une architecture x86, l'utilisateur final n'a besoin que d' un système d'exploitation Windows en cours d'exécution sur une architecture x86. En outre, un paquet précompilé peut courir plus vite qu'un interprète la compilation du code source en temps réel
Inconvénient de droits: . Matériel spécifique
Parce qu'un compilateur traduit le code source dans une machine spécifique linguistiques , les programmes doivent être spécialement compilée pour Mac OS X , Windows ou Linux , ainsi que spécifiquement pour les architectures 32-bit ou 64-bit. Pour une entreprise de programmation ou logiciel essayant d'obtenir un produit à l'auditoire le plus large possible , ce qui signifie le maintien de plusieurs versions du code source pour la même application. Cela se traduit par plus de temps consacré à la maintenance du code source et de peine supplémentaire lors des mises à jour sont libérés
. Avantage: Hardware Optimization
Tout en étant enfermé dans un matériel spécifique paquet a ses inconvénients , la compilation d'un programme peut également augmenter sa performance. Les utilisateurs peuvent envoyer des options spécifiques à compilateurs concernant les détails du matériel , le programme sera exécuté. Cela permet au compilateur de créer un code en langage machine qui rend l'utilisation plus efficace du matériel spécifié , par opposition à un code plus générique. Cela permet également aux utilisateurs avancés afin d'optimiser les performances d'un programme sur leur ordinateur
Inconvénient de droits: . Temps de compilation
Un des inconvénients d'avoir un compilateur , c'est qu'il doit réellement compiler le code source. Alors que les petits programmes que beaucoup novice code programmeurs prennent des quantités infimes de temps pour compiler , les grandes suites d'applications peuvent prendre beaucoup de temps à compiler. Quand les programmeurs n'ont rien à faire qu'à attendre pour le compilateur à la fin, ce temps peut ajouter jusqu'à --- en particulier pendant la phase de développement, lorsque le code doit être compilé afin de tester les fonctionnalités et le dépannage pépins .