[Python-de] Re: Code Style Review

Stefan Schwarzer <[email protected]>
Newsgroups gmane.comp.python.general.german
Message-ID <[email protected]>
On 2022-11-28 16:37, [email protected] wrote:
> Die Frage ist, warum du solche PyLint Ausnahmen ("# pylint:") definiert
> hast. IMHO benötigt man dafür einen wirklich triftigen Grund; eine
> strenge Indikation. Die Hinweise und Meldungen von Lintern haben ihre
> Berechtigung und sollten nicht unterdrück werden.

Ich sehe das nicht ganz so streng. Linter-Ausgaben sind für
mich eher Hinweise/Empfehlungen; letztlich sollte der/die
AutorIn des Codes entscheiden, was davon wie umgesetzt wird.

> Neben den Lintern würde ich dir noch empfehlen, ein paar mehr Leerzeilen
> zu machen. Das erhöht IMHO die Lesbarkeit, gerade bei verschachtelten
> Strukturen. Natürlich ist das Geschmacksache bzw. eine Frage des
> Team-Konsent. Z.B. hier:
> 
> Am 28.11.2022 16:19 schrieb Marc Haber:
> 
>> while True:
>>      time.sleep(30)
>>      if debug > 0:
>>          print('run evaluate() and cleanup_table() from main loop')
>>      cleanup_table()
>>      if debug > 0:
>>          print_table()
>>      evaluate()
> 
> while True:
> 
>       time.sleep(30)
> 
>       if debug > 0:
>           print('run evaluate() and cleanup_table() from main loop')
> 
>       cleanup_table()
> 
>       if debug > 0:
>           print_table()
> 
>       evaluate()

Sinnigerweise sehe ich das umgekehrt, das heißt, ich finde,
was die Verwendung von Leerzeilen angeht, die erste Variante
lesbarer. :-)

Oder spezieller kann man sagen, dass zwar die Lesbarkeit
_lokal_ geringfügig verbessert wird, aber durch vermehrtes
Scrollen im Code die Lesbarkeit _global_ eher schlechter
wird.

Die "großzügige" Einrückung von vier Leerzeichen pro
Einrückungs-Ebene in Python macht es eigentlich relativ
leicht, logische Strukturen zu erkennen, auch ohne die
Leerzeilen.

Zum Thema Leerzeilen innerhalb von Funktionen und Methoden
sollte man sich als Autor ruhig fragen, was man damit
bezweckt. Ich habe schon manches Mal Code in einer Methode
gesehen, der mit Leerzeilen in Blöcke aufgeteilt wurde, -
aber ich hatte keine Ahnung, warum die Blöcke so aufgeteilt
waren wie sie waren und fand das dadurch eher verwirrend.

Noch ein Tipp, den ich selbst zu beherzigen versuche: Immer,
wenn ich Leerzeilen zur Gruppierung innerhalb von Funktionen
einfügen würde, schreibe ich stattdessen einen Code-Kommentar,
der den Code-Block zusammenfasst. Man kann natürlich
trotzdem oberhalb des Zusammenfassungs-Kommentars noch eine
Leerzeile einfügen, aber ich mache es normalerweise nicht.

Zum Thema Kommentare siehe auch
https://sschwarzer.com/download/comments_pycon_de2019.pdf :-)

Viele Grüße
Stefan

_______________________________________________
python-de Mailingliste -- [email protected]
Zur Abmeldung von dieser Mailingliste senden Sie eine Nachricht an [email protected]
https://mail.python.org/mailman3/lists/python-de.python.org/
Mitgliedsadresse: [email protected]
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.