Les boucles trop optimisées font mal aux yeux
TL;DR : N'optimisez pas les boucles sans un besoin clair et des preuves concrètes du monde réel
Vous pensez peut-être que l'optimisation de chaque boucle améliorera les performances, mais cette approche se retourne contre vous lorsque vous sacrifiez la clarté pour des gains non prouvés.
Écrire du code complexe pour éviter des ralentissements hypothétiques rend souvent difficile pour les autres (et votre futur moi) la compréhension ou le débogage de votre code.
Il serait préférable que vous accordiez la priorité à la lisibilité.
Gardez les boucles simples et optimisez-les uniquement lorsque vous savez qu'un goulot d'étranglement existe dans des scénarios d'utilisation réelle.
# Over-optimized and less readable result = [item.process() for item in items if item.is_valid()]
# Clearer and easier to understand result = [] for item in items: if item.is_valid(): result.append(item.process())
[X] Semi-automatique
Recherchez des compréhensions de listes ou des structures de boucles complexes qui optimisent les performances sans véritable preuve de référence de performance.
[X] Intermédiaire
Les outils d'IA donnent souvent la priorité à l'exactitude fonctionnelle afin de pouvoir produire des boucles claires et simples.
Si vous demandez à l'IA des performances à tout prix, elle pourrait créer un code sur-optimisé, même pour des tâches simples.
Avec des instructions appropriées pour mettre l'accent sur la lisibilité et la maintenabilité, l'IA peut détecter et corriger cette odeur en simplifiant les boucles et en choisissant la clarté plutôt qu'une optimisation prématurée.
Rappelez-vous : les assistants IA font beaucoup d'erreurs
Without Proper Instructions | With Specific Instructions |
---|---|
ChatGPT | ChatGPT |
Claude | Claude |
Perplexity | Perplexity |
Copilot | Copilot |
Gemini | Gemini |
Ne sacrifiez pas la lisibilité en optimisant trop tôt.
Vous pourrez optimiser plus tard si une boucle devient un goulot d'étranglement avéré.
D'ici là, un code clair et simple permettra de gagner du temps, de réduire les bugs et de le rendre plus maintenable.
Les odeurs de code sont mon opinion.
Photo de Tine Ivanič sur Unsplash
Plus de péchés informatiques sont commis au nom de l'efficacité sans nécessairement y parvenir que pour toute autre raison.
W. A. Wulf
Cet article fait partie de la série CodeSmell.
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!