2015-08-05 1 views
0

Nouveau programmeur ici! Je crée moi-même mon premier script, et j'ai une fonction particulière assez importante, comme dans 50 lignes.Y a-t-il une limite à la taille d'une fonction?

Je comprends qu'en théorie, une fonction peut être aussi grande que vous le voulez, mais en ce qui concerne l'étiquette, où est un bon endroit où rester? J'utilise Python 2.Quelque chose si cela fait une différence.

+0

@DanielRoseman cette question est un _very_ mauvais ajustement pour les programmeurs - il serait rapidement voté et fermé là-bas, voir http://meta.programmers.stackexchange.com/questions/6483/why-was-my-question -closed-or-down-voting/6491 # 6491 Lecture recommandée: ** [Que se passe-t-il sur Programmers.SE? Un guide pour Stack Overflow] (http://meta.programmers.stackexchange.com/q/7182/31260) ** – gnat

+0

Je m'appuie sur ce que disent pylint ou pyflakes lors de l'analyse de mon code. Les deux sont assez simples et les éditeurs les plus modernes ont des plugins pour cela. Par exemple, flake8 par défaut va vérifier la complexité de McCabe de chaque fonction (https://en.wikipedia.org/wiki/Complexity_Cyclomatic). – fernandezcuesta

Répondre

1

Une bonne règle empirique (et c'est plutôt une ligne directrice du pouce) est que vous devriez être en mesure d'afficher la fonction entière sur un seul écran.

Cela rend beaucoup plus facile de voir le flux de contrôle sans avoir à faire défiler partout dans l'éditeur que vous utilisez.

Si vous ne pouvez pas comprendre ce que la fonction fait à première vue, il est probablement une bonne idée de revoir la conception des morceaux de code afin que les étapes plus détaillées sont placés dans leur propre, bien nommé, fonction séparée et juste appelé de celui-ci.

Cependant, ce n'est pas une règle absolue, vous adapterez votre approche en fonction de votre niveau d'expertise et de la complexité du code.