2010-10-27 5 views
6

Eh bien, le titre est explicite. Je me suis demandé ceci en compilant un projet qui a beaucoup de lignes commentées. C'est un peu idiot parce que le fichier jar n'augmenterait pas beaucoup (quelques octets) mais je suis curieux de savoir si cela pourrait affecter un programme avec beaucoup de code et de commentaires.Java inclut-il des commentaires sur le code compilé?

Merci

Répondre

3

Il ne serait pas une incidence sur l'exécution ou l'exécution (sauf si vous avez commenté les mauvaises déclarations :-)

Mais il certainement aurait une incidence sur la lisibilité. Il n'y a aucune raison d'avoir de gros blocs de code commentés (en production), version control est la voie à suivre

Voir aussi this question. Question classée.

+0

Merci à tous pour les réponses. Je fais juste quelques trucs de base sans utiliser subversion ou quoi que ce soit, mais quand j'utilise de tels outils, je me souviendrai de vos conseils! – oli206

+0

Le titre m'a fait curieux de son contenu. Le [original] (http://stackoverflow.com/questions/123423/do-you-leave-historical-code-commented-out-in-classes-that-you-update) a été supprimé, aucune idée pourquoi. Un lien vers * Laissez-vous le code historique commenté dans les classes que vous mettez à jour? * Peut être trouvé [ici] (https://web.archive.org/web/20140819230320/http://stackoverflow.com/questions/123423/fais-tu-laisse-le-code-historique-commente-dans-les-classes-que-tu-mets à jour #). – Daniel

+0

Le lien pour "cette question" ne fonctionne plus. – mikebabcock

14

Non, les commentaires sont normalement supprimés dans toutes les langues (non seulement en Java). Ils n'ont pas de représentant en code octet. Ce qui reste là-bas, est une chose annotée et comme

+0

Pas tous :-) En PHP, vous pouvez réellement réfléchir sur les commentaires d'une classe ou d'une méthode. Voir http://www.php.net/manual/en/reflectionclass.getdoccomment.php. –

+1

Eh bien, PHP est un langage interprété. Donc, votre code n'est pas compilé comme en Java, C#, C++, ... Si vous utilisez quelque chose comme eAccelerator qui a stocké le code dans leur représentant compilé, vous ne pourrez pas utiliser cette fonctionnalité, car les commentaires ont été retirés – Scoregraphic

3

Non, la documentation n'est pas incluse dans le fichier de classe compilé.

Les javadocs peuvent être générés avec le programme javadoc. Tout javadoc sera converti en HTML.

2

Non, ce n'est pas ajouté. Toutefois, vous devez envisager de supprimer le code mort (c'est-à-dire le code commenté, mais également le code inutilisé). Si vous pensez que "peut-être j'aurai besoin de cette méthode", supprimez simplement la méthode, et si vous avez réellement besoin de cette méthode un jour, utilisez l'outil SCM (Subversion, Git, CVS ou autre) pour récupérer cet ancien code.

+0

hm, puis-je demander pourquoi? – XXL

+0

@XXL Code commenté: si le code est commenté, cela signifie qu'il n'est plus utilisé. Alors pourquoi le garder? (vous pouvez le retrouver avec votre SCM, c'est son but). Code mort: même remarque: si non utilisé pourquoi le garder? – romaintaz

-8

Oui JAVA inclut un commentaire dans le code compilé car sans comprendre comment il va savoir s'il s'agit d'un commentaire ou non. Mais après avoir inclus la ligne commentée n'est pas envoyé à la directive du compilateur pour la compilation.

Questions connexes