Lorsque je traite des algorithmes compliqués dans des langages prenant en charge les fonctions imbriquées (comme Python et D), j'écris souvent des fonctions énormes (car l'algorithme est compliqué), mais j'atténue cela en utilisant des fonctions imbriquées pour structurer le code compliqué. Les énormes fonctions (plus de 100 lignes) sont-elles toujours considérées comme mauvaises même si elles sont bien structurées en interne via l'utilisation de fonctions imbriquées?
Edit: Pour ceux d'entre vous qui ne sont pas familiers avec Python ou D, les fonctions imbriquées dans ces langages permettent également d'accéder à l'étendue des fonctions externes. En D, cet accès permet la mutation des variables dans la portée externe. En Python, il autorise uniquement la lecture. Dans D, vous pouvez explicitement désactiver l'accès à la portée externe dans une fonction imbriquée en le déclarant static
.