Avantages et inconvénients des compilateurs
Avantage: autonome et efficace
Un grand avantage des programmes compilés est qu’ils sont des unités autonomes prêtes à être exécutées. Comme ils sont déjà compilés dans des fichiers en langage machine binaire, une seconde application ou package que l'utilisateur doit maintenir à jour n'est pas nécessaire. Si un programme est compilé pour Windows dans une architecture x86, l'utilisateur final n'a besoin que d'un système d'exploitation Windows s'exécutant sur une architecture x86. En outre, un package précompilé peut s'exécuter plus rapidement qu'un code source d'interpréteur de compilateur en temps réel.
Inconvénient: spécifique à un matériel
Puisqu'un compilateur traduit le code source dans un langage informatique spécifique, les programmes doivent être spécialement compilés pour OS X, Windows ou Linux, ainsi que pour les architectures 32 ou 64 bits. Pour un programmeur ou un éditeur de logiciels cherchant à faire en sorte qu'un produit atteigne l'audience la plus large possible, cela représente la nécessité de disposer de plusieurs versions du code source pour la même application, ce qui permet de passer plus de temps sur le produit. maintenance du code source et problèmes supplémentaires lors de la publication des mises à jour.
Avantage: optimisation matérielle
Bien que le fait de se limiter à un package matériel spécifique présente des inconvénients, la compilation d’un programme peut également augmenter les performances de ce dernier. Les utilisateurs peuvent envoyer des options spécifiques aux compilateurs, liées aux détails du matériel sur lequel le programme sera exécuté. Cela permet au compilateur de générer du code en langage machine qui utilise plus efficacement le matériel spécifié, par opposition au code plus générique. Cela permet également aux utilisateurs avancés d’optimiser les performances d’un programme sur leurs ordinateurs.
Inconvénient: temps de compilation
L'un des inconvénients d'un compilateur est que vous devez vraiment compiler le code source. Bien que la compilation de petits programmes codés par de nombreux développeurs débutants nécessite peu de temps, les grandes suites d’applications peuvent prendre beaucoup de temps à compiler. Lorsque les programmeurs n'ont rien d'autre à faire que d'attendre la fin du compilateur, ce temps peut ralentir le processus, en particulier pendant la phase de développement, lorsque le code doit être compilé pour tester sa fonctionnalité et résoudre les erreurs.