J'ai un doute : les importations et les objets inutilisés dans le code Java ont-ils un impact sur les performances ?
Supposons qu'un objet soit initialisé et jamais utilisé, que se passe-t-il ? Et quel est le coût des importations inutilisées ?
J'ai un doute : les importations et les objets inutilisés dans le code Java ont-ils un impact sur les performances ?
Supposons qu'un objet soit initialisé et jamais utilisé, que se passe-t-il ? Et quel est le coût des importations inutilisées ?
C'est une question très courante.
Comme pour la plupart des questions de performance, la meilleure approche consiste à écrire le code le plus clair et le plus simple possible, car cela améliore la maintenabilité du code et permet de garantir qu'il fonctionne raisonnablement bien même après avoir été modifié. (Un code astucieux/embrouillé/ inutilement verbeux peut fonctionner rapidement au départ, mais lorsqu'il est modifié par de simples mortels, il peut devenir beaucoup plus lent).
Les importations inutilisées ont un impact trivial sur le compilateur, mais il n'y a pas d'importations dans le byte code ou au moment de l'exécution.
Les objets inutilisés peuvent être éliminés par optimisation, mais il est préférable de les éviter car ils ont presque toujours un impact sur les performances, mais surtout ils rendent la lecture et la maintenance de votre code plus difficiles.
Les importations inutilisées n'ont aucun impact sur les performances au moment de l'exécution. Il s'agit purement d'un mécanisme d'espace de noms. Néanmoins, vous devriez toujours importer uniquement ce dont vous avez besoin pour des raisons de lisibilité et pour éviter les collisions d'espaces de noms qui sont une nuisance.
En dehors de la lisibilité du code et donc de la maintenabilité du code, la compilation du code java peut être plus rapide (mais cela ne se remarque pas) en mettant de l'ordre dans les importations, mais les performances d'exécution ne sont pas affectées, puisque le code d'octet généré n'est pas affecté par les importations désordonnées. Le code octet généré reste le même.
Si l'impact sur la compilation est minime, l'impact sur le déploiement peut être mauvais. Je viens de tomber sur une importation inutilisée qui nécessitait une bibliothèque séparée qui est devenue une dépendance de maven. Un autre problème de dépendance transitive n'a heureusement pas été trouvé, mais le fichier .war
Le dossier était plus épais sans raison. Ajoutez à cela un jar superflu dans le classloader de la webapp.
Oui, cela a un impact sur les performances, si nous faisons référence à une déclaration d'importation inutilisée dans notre classe Java. Le compilateur Java vérifiera les références mentionnées dans l'instruction d'importation et, à un niveau infime, cela aura un impact sur les performances de votre classe.
Gracias
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.
7 votes
stackoverflow.com/questions/979057/
0 votes
Pourquoi ne pas utiliser Eclipse
Organize Imports
fonction ?0 votes
Ou les importations Organise dans IntelliJ ou NetBeans ou tout autre IDE décent.
1 votes
Il y a un impact sur la gestion du code, c'est certain :)
0 votes
Duplicata possible de Y a-t-il une raison de nettoyer les importations inutilisées en Java, si ce n'est pour réduire l'encombrement ?