utilisez-vous la valeur renvoyée?
TL; DR: Évitez d'attribuer des valeurs que vous n'utilisez jamais.
Lorsque vous attribuez une valeur à une variable locale mais que vous ne l'utilisez jamais, vous créez un encombrement inutile dans votre code.
Cela peut confondre les autres et rendre le code plus difficile à maintenir.
Parfois, lors du débogage, vous pouvez attribuer des variables temporelles pour une meilleure inspection.
Cela se produit également lorsque vous attribuez l'exécution à une propriété d'objet mais il est plus difficile à suivre.
C'est aussi un signe d'un objet mutant car si vous supprimez l'affectation, il ne reste que les effets secondaires.
Les objets mutés peuvent provoquer des effets secondaires inattendus, ce qui rend plus difficile le suivi des changements.
function updateUserName(user, newname) { user.name = newname; return user; } function performMaintenance(existingUser) { let updatedUser = updateUserName(existingUser, "Bobby Peru"); // Other tasks } // The variable updatedUser is never used
function updateUserName(user, newname) { user.name = newname; // Just side effects without explicit return } function performMaintenance(existingUser) { updateUserName(existingUser, "Bobby Peru"); // Other tasks }
[x] automatique
Vous pouvez détecter cette odeur à l'aide d'outils d'analyse statique ou de revues de code qui vérifient les variables inutilisées après l'attribution.
La plupart des liners signalent cela comme un problème.
[x] débutant
Il reste propre et efficace lorsque votre code reflète avec précision la logique du monde réel.
Les affectations inutilisées rompent cette connexion, ce qui rend plus difficile de comprendre l'intention et de maintenir le code.
Les outils AI génèrent rarement des affectations de variables inutilisées lorsqu'ils comprennent l'intention.
La refactorisation assistée par AI avec des instructions claires peut signaler les variables inutilisées et suggérer des déménagements, mais il ne comprend pas toujours si la valeur de retour aurait dû être utilisée.
Rappelez-vous: les assistants AI font beaucoup d'erreurs
Without Proper Instructions | With Specific Instructions |
---|---|
ChatGPT | ChatGPT |
Claude | Claude |
Perplexity | Perplexity |
Copilot | Copilot |
Gemini | Gemini |
DeepSeek | DeepSeek |
Meta AI | Meta AI |
Variables inutilisées après les mutations créent du bruit et de la confusion.
N'attribuez pas la valeur de retour si vous n'en avez pas besoin.
Si la méthode doit renvoyer quelque chose de significatif, assurez-vous de l'utiliser.
Les odeurs de code sont mon opinion.
Photo d'Evan Demicoli sur unclash
Si vous devez dépenser des efforts pour déchiffrer le code, vous devez le réécrire.
Martin Golding
Cet article fait partie de la série de codes.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!