• [^] # Re: remarques en passant

    Posté par (site web personnel) . En réponse au journal D'une playlist xspf vers des mp3 dans un répétoire. Évalué à 2. Dernière modification le 02 octobre 2019 à 17:38.

    Black est un formateur de code Python: https://github.com/psf/black

    Tu semble preneur de retours, alors parmi les éléments de style que tu peux regarder :

    • les grands espaces entre les lignes : je te suggérerais d'en mettre un peu moins. Je ne sais plus ce qui est recommandé, moi j'ai tendance à espacer les méthodes entre elles par une ligne vide, et les classes entre elles par 2 lignes vides. Plus de deux lignes vides ne me parait en général pas utile. C'est une question de préférence, on peut ne pas être d'accord avec ça.
    • style et langue des commentaires : je te suggérerais d'utiliser la même langue dans tous les commentaires. Quelques petites erreurs ("Openning" → "Opening")
      • les commentaires ne devraient pas trop décrire ce que le code fait, mais pourquoi il le fait. Je mettrais une espace après le # mais tout le monde ne le fait pas.
    • le bloc except IOError: se finit par une instruction "pass", que tu peux simplement enlever.

    Et là, ce qui suit est plus une opinion et un ensemble de suggestions plutôt que des règles.

    Tu fais une classe instanciée qu'une fois : Pl2mp3. Ça peut être utile d'avoir une classe réutilisable, mais dans ce cas je ne ferais pas le traitement des arguments de main dedans. Si la classe n'est pas destinée à être réutilisée, j'aurais tendance à ne pas du tout faire de classe pour simplifier le code : une fonction main remplacerait avantageusement la méthode start de la classe Pl2mp3.

    Ensuite,

     main = Pl2mp3()
     main.start()

    devient :

     main()

    Tu peux garder la méthode argparse et en faire une fonction argparse, et tu peux te débarrasser du membre self.args : la fonction produit le résultat de l'analyse des arguments et retourne ces résultats au lieu de les affecter à un membre. Ensuite, self.argparse() devient args = argparse() et args devient une variable locale de ta fonction main (ou de ta méthode start). Paf, un membre de moins, moins d'état "global" (attaché à la classe), le code devient plus facile à lire parce que les choses sont moins dispersées. Pas besoin de garder les arguments dans l'état de ta classe si tu ne t'en sers pas ailleurs.

    Amuse-toi bien :-)