Je vois que certains programmeurs ajoutent du code qui, après tout, ne fait rien d'utile. Par exemple (c #):
[Serializable]
class Foo {
// ...
string SerializeMe() {
return new XmlSerializer(typeof(this)).Serialize(this).ToString(); // serialize to xml (syntax wrong, not important here)
}
}
12 Réponses :
pense que le sens de inutile est qu'il ne peut pas et ne sera pas utilisé. Je pense aussi qu'une porte ouverte est très ouverte. P>
Sidenote: le commentaire de code, ou attribuant sans fonction, n'est pas toujours inutile;)
Ceci n'est pas inutile car il vous rend (ou elle) produisez des hormones que vous, elle ou à la fois de vous êtes accro.
Dans un projet commercial - je dirais non, surtout si quelqu'un peut le désassembler pour la lecture, puis dispose d'un moment WTF. p>
Dans un projet de maison - sûr, pourquoi pas, je garde souvent des extraits pour une utilisation ultérieure. P>
-1 Je vous conseillerais de garder des extraits dans un plug-in Snippet ou un contrôle de la source.
Autre que c'est un projet personnel et en tant que tel peut faire quoi qu'il veuille avec elle.
De toute façon, vous devez utiliser le contrôle de la source et il ne devrait certainement pas être vérifié.;)
Eh bien, je ne peux pas commenter ce morceau de code sans connaître votre arrière-plan, mais je suivez personnellement une règle de manière stricte de ne rien avoir dans le code que si j'en ai vraiment besoin. Ou au moins savoir que cela peut être utile un jour pour quelque chose que j'ai déjà en tête maintenant. P>
Ma règle de base, p>
Si ce n'est pas utilisé, débarrassez-vous. P>
Tous les autres commentaires surplus, les attrributes ne sont que du bruit et aident votre code à devenir illisible. Si vous êtes laissé là, ils encouragent plus de code excédentaire dans votre base de code. Alors retirez-le. P>
Bon contrôle de la source signifie que le code ou le code inutile qui n'est plus nécessaire devrait être supprimé. Il peut toujours être récupéré à partir du contrôle source à une date ultérieure. P>
Je suis d'accord, c'est aussi mon point de vue. Il vous aide également lorsque vous comparez les versions antérieures du même fichier car vous voyez ce qui a changé! Vous pouvez dire "Oh, nous avons abandonné la prise en charge de la sérialisation depuis la version XXX" par exemple. Donc, il ajoute une documentation implicite.
C'est un mauvais code. p>
Le mauvais code est une pratique courante. P>
Cela étant dit, il ne vaut pas l'effort de changer de choses qui ne sont pas "cassées". P>
Je suis complètement en désaccord. C'est des attitudes comme celle qui maintiennent les bugs enfermés dans le code source pendant des décennies de peur de toucher le "code sacré". Et si j'ai pris votre roman préféré, et mettez-la de graffiti tout dessus? Souhaitez-vous lire ce roman?
prend-il même un effort minimal pour lire ce code supplémentaire (inutile, comme vous l'ajouter)? P> blockQuote>
Si oui (et je pense que c'est tellement) alors il ne devrait pas être dans le code. Le code comme celui-ci est pollué avec des extraits supplémentaires qui ne sont pas utiles, ils sont là "juste au cas où".
Le "plus tard sur le refactoring" de ces choses peut être douloureux, après 12 mois de 12 mois, qui va se souvenir si cela était vraiment utilisé? P>
Il semblerait que la perfection ne soit pas atteinte lorsque cela ne peut plus être ajouté, mais quand il ne peut plus être retiré. - Antoine de Saint-Exupéry p> blockQuote>
Modification d'une citation d'Antoine de Saint-Exupéry, un concepteur d'aéronefs qui a écrit un livre d'enfants merveilleux. Quelque chose comme "perfections ne vient pas quand ...".
Félicitations, votre temps de codage vient de triplé et que quiconque commissions vous obtiendrez.
Merci à la civilisation IV (et Leonard Nimoy), je sais que la citation originale est (traduite des français): il semblerait que la perfection soit atteinte non quand il ne peut plus être ajouté, mais lorsque cela ne peut plus être retiré. - Antoine de Saint-Exupery (1900 - 1944)
NGU: La citation ne vous dit pas avoir i> pour atteindre la perfection.
@Davidthornley: quel livre pour enfants est-ce? Je ne suis au courant que de son Livre pour adultes .
vraiment em> strong> n'aime pas ça. P>
Parce que je passe ensuite un temps précieux pour essayer de comprendre pourquoi il est là. En supposant que si c'était là, c'est là pour une raison, et si je ne vois pas la raison, il y a une chance que je manque quelque chose d'important que je comprenais avant de commencer à jouer avec le code. Cela me irrite lorsque je me rendrai compte que je viens de perdre une heure à essayer de comprendre pourquoi, ou quoi, une extrait de code fait, cela venait de laisser un développeur trop paresseux pour revenir en arrière et l'enlever. P>
S'il y a un plan actif pour utiliser cette fonctionnalité supplémentaire, continuez-le. P>
Si vous savez qu'il ne sera jamais utilisé, ou si ce plan a cessé d'être pertinent il y a 6 mois, alors tirez-le. Je dirais-le d'abord, puis je l'enlève complètement plus tard. P>
Je suis au milieu de dissonquer beaucoup de variables publiques, mais il suffit de ne pas être protégé ou privé, simplement parce qu'ils n'ont pas de sens d'une perspective d'API à être exposés - ça et rien ne les utilise . p>
Code One-Liner inutile peut et doit être supprimé. P>
Code inutile qui a pris le temps de rédiger peut et devrait être enlevé ... mais les responsables ont tendance à se croiser à ce sujet. Peut-être que la meilleure solution consiste à avoir un projet probablement sans probabilitéButwhoknows où tout le monde peut vérifier dans un code inutile pouvant être utilisé à nouveau dans deux ou trois ans. Si rien d'autre, de cette façon, les gens n'ont pas à se sentir nerveux de la supprimer. P>
(Oui, en théorie, vous pouvez le faire sortir du contrôle de la source, mais l'ancien code supprimé dans le contrôle de la source n'est pas exactement très découvertable.) P>