Refactoriser le code en préservant son comportement.
La refactorisation doit préserver le comportement observable sauf demande explicite de changement. Identifiez des tests ou exemples capables de détecter une différence involontaire.
Adaptez le processus à votre tâche.
Définissez le comportement à conserver et la duplication ou complexité à traiter. Effectuez un changement structurel limité, puis comparez cas connus, erreurs et effets de bord avec l’original.
- Ce que vous fournissez
- Code et changement structurel demandé.
- Ce que vous obtenez
- Ébauche refactorisée préservant le comportement prévu.
Consultez les données et le résultat.
Entrée et sortie illustratives · exemple pédagogique, pas une exécution WebAct en direct
Exemple champ
Refactor this Python function without changing its result or empty-name error:
def label(name, loud):
if loud:
if not name:
raise ValueError("name required")
return name.upper()
if not name:
raise ValueError("name required")
return name.lower()Exemple complet
def label(name, loud):
if not name:
raise ValueError("name required")
return name.upper() if loud else name.lower()
Checks: label("Ada", True) → "ADA"; label("Ada", False) → "ada". An empty string raises ValueError("name required") in both modes.Chargez ces données dans le prompt, puis copiez-le dans WebAct pour essayer la tâche. Votre résultat peut différer de l'illustration.
Décisions et dépannage.
Une refactorisation peut-elle changer volontairement le comportement des erreurs ?
Uniquement si ce changement fait partie de la demande. Sinon, préservez-le ou séparez-le en une décision ultérieure explicite.
Pourquoi l’extraction de code commun change-t-elle le résultat d’une branche ?
Vérifiez l’ordre d’exécution, l’état et les conditions propres à la branche. Un code similaire peut fonctionner sous des hypothèses différentes.
Essayez avec votre propre source.
Remplacez l'exemple par vos données dans le prompt. Gardez les exigences nécessaires, puis copiez la tâche dans WebAct.
Personnaliser et copier la tâche ↑