Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > de.comp.lang.python > #5865

[Python-de] Re: Code Style Review

Path csiph.com!fu-berlin.de!uni-berlin.de!not-for-mail
From Christopher Arndt <chris@chrisarndt.de>
Newsgroups de.comp.lang.python
Subject [Python-de] Re: Code Style Review
Date Mon, 28 Nov 2022 16:48:38 +0100
Lines 36
Message-ID <d60e87cd-51b9-084e-3fb6-d15b7588004d@chrisarndt.de> (permalink)
References <tm2jhn$1k5h8$1@news1.tnib.de> <480b80d21e58d280c437b4854bfc7cf1@posteo.de>
Mime-Version 1.0
Content-Type text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding 8bit
X-Trace news.uni-berlin.de OE1yVYwUyQshj2cYUw0KeAoLQEbw8fJxpCJCK0da2tzA==
Authentication-Results mail.python.org; dkim=pass reason="2048-bit key; unprotected key" header.d=chrisarndt.de header.i=@chrisarndt.de header.b=B1ECyQ14; dkim-adsp=pass; dkim-atps=neutral
DKIM-Signature v=1; a=rsa-sha256; c=relaxed/relaxed; d=chrisarndt.de; s=dkim; t=1669650519; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=78A5Qi61FMllauEys7Ag6FKjNFDzpjVyBdnsI27QvAM=; b=B1ECyQ14znAi929y92gOwUaT4Qy5DkCBYNTVZtvdiXO/Zduv1TbLvdQmjbc1QTcEbnML5F ri6gz02I8MhCoDzCi60JVqvp5YYVLxW+qxog/x9OW1BSynBTerlvHcplhuQ6jjWW7oJvyi U9wP/11BCDEmzR5WT4lkhbBSAWKRoSCFeY4Bj6FZF7wDNknnffqt4k3ADGwYL4B1zYxUUN P/sse84JfuwWMyrYVvpKHiFjuc1z57ZvijAnOKstITSQiaXmIuTpd/77npbCBAFATzNPH6 E/83IZY5/XiXlauYsotmulTF/ihV1lr0A9L1nXpwDU50TmZw3iknBENrprWNkg==
Content-Language en-US, de-DE
In-Reply-To <480b80d21e58d280c437b4854bfc7cf1@posteo.de>
X-Spamd-Bar /
Authentication-Results mx1.0x20.eu; auth=pass smtp.mailfrom=chris@chrisarndt.de
Message-ID-Hash XSEUEJ6WCAFUATUUKOCY5J4L5VPAT3GG
X-Message-ID-Hash XSEUEJ6WCAFUATUUKOCY5J4L5VPAT3GG
X-MailFrom chris@chrisarndt.de
X-Mailman-Rule-Misses dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-python-de.python.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
X-Mailman-Version 3.3.7
Precedence list
List-Id Die Deutsche Python Mailingliste <python-de.python.org>
Archived-At <https://mail.python.org/archives/list/python-de@python.org/message/XSEUEJ6WCAFUATUUKOCY5J4L5VPAT3GG/>
List-Archive <https://mail.python.org/archives/list/python-de@python.org/>
List-Help <mailto:python-de-request@python.org?subject=help>
List-Owner <mailto:python-de-owner@python.org>
List-Post <mailto:python-de@python.org>
List-Subscribe <mailto:python-de-join@python.org>
List-Unsubscribe <mailto:python-de-leave@python.org>
Xref csiph.com de.comp.lang.python:5865

Show key headers only | View raw


Am 28.11.22 um 16:37 schrieb c.buhtz@posteo.jp:
> Neben PyLint könntest du auch nochmal "flake8" auf den Code loslassen.

Außerdem könntest du auch noch entweder "black" oder "yapf" oder ein 
ähnliches Tool benutzen, um den Code einheitlich und anhand üblicher 
Gepflogenheiten zu formatieren.

Weiterhin:

- Sortiere die Imports mit "isort"
- Strukturiere den Code in Sektionen. Vorschlag

   - Module docstring
   - Imports
   - Global constants and variables
   - Exceptions
   - Classes
   - Helper functions
   - main function

Momentan sind bei dir Code auf globaler Ebene und Funcktionen wild 
gemischt. Das ist ziemlich unübersichtlich und verleitet m.E. dazu, den 
angemessenen "Separation of concern" aus dem Auge zu verlieren. Auf 
globaler Ebene würde ich idR wirklich nur einige wichtige Konstanten 
definieren und den Rest in eine "main"-Funktion verschieben. Diese wird 
dann am Ende des Scripts aufgerufen mit:

if __name__ == '__main__':
     main()

Das zwingt dazu, sich überlegen zu müssen, welche Daten wirklich global 
sein müssen und wie ansonsten Daten zwischen Funktionen und Klassen 
weitergereicht werden.


Chris

Back to de.comp.lang.python | Previous | NextPrevious in thread | Next in thread | Find similar


Thread

Code Style Review Marc Haber <mh+usenetspam1118@zugschl.us> - 2022-11-28 16:19 +0100
  [Python-de] Re: Code Style Review c.buhtz@posteo.jp - 2022-11-28 15:37 +0000
    [Python-de] Re: Code Style Review Christopher Arndt <chris@chrisarndt.de> - 2022-11-28 16:48 +0100
      [Python-de] Re: Code Style Review c.buhtz@posteo.jp - 2022-11-28 19:53 +0000
      Re: [Python-de] Re: Code Style Review Marc Haber <mh+usenetspam1118@zugschl.us> - 2022-11-28 22:07 +0100
        [Python-de] Re: Code Style Review Stefan Schwarzer <sschwarzer@sschwarzer.net> - 2022-11-29 18:51 +0100
          [Python-de] Re: Code Style Review Marc Haber <mh+python-de@zugschlus.de> - 2022-11-29 21:44 +0100
            [Python-de] Re: Code Style Review Stefan Schwarzer <sschwarzer@sschwarzer.net> - 2022-11-29 23:16 +0100
    Re: [Python-de] Re: Code Style Review Marc Haber <mh+usenetspam1118@zugschl.us> - 2022-11-28 21:52 +0100
      [Python-de] Re: Code Style Review c.buhtz@posteo.jp - 2022-11-28 22:38 +0000
        Re: [Python-de] Re: Code Style Review Enrik Berkhan <Enrik.Berkhan@inka.de> - 2022-11-29 06:03 +0000
        Re: [Python-de] Re: Code Style Review Marc Haber <mh+usenetspam1118@zugschl.us> - 2022-11-29 15:22 +0100
          [Python-de] Re: Code Style Review c.buhtz@posteo.jp - 2022-11-29 14:39 +0000
      [Python-de] Re: Code Style Review Matthias Urlichs <matthias.urlichs@noris.de> - 2022-11-30 10:47 +0000
        [Python-de] Re: Code Style Review Marc Haber <mh+python-de@zugschlus.de> - 2022-12-01 21:30 +0100
          [Python-de] Re: Code Style Review Stefan Schwarzer <sschwarzer@sschwarzer.net> - 2022-12-02 00:07 +0100
            Re: [Python-de] Re: Code Style Review "Peter J. Holzer" <hjp-usenet3@hjp.at> - 2022-12-03 14:32 +0100
          [Python-de] Re: Code Style Review Matthias Urlichs <matthias.urlichs@noris.de> - 2022-12-02 09:29 +0000
            [Python-de] Re: Code Style Review Marc Haber <mh+python-de@zugschlus.de> - 2022-12-02 18:02 +0100
    [Python-de] Re: Code Style Review Stefan Schwarzer <sschwarzer@sschwarzer.net> - 2022-11-29 18:33 +0100
  [Python-de] Re: Code Style Review Stefan Schwarzer <sschwarzer@sschwarzer.net> - 2022-11-29 18:18 +0100
    [Python-de] Re: Code Style Review Hans-Peter Jansen <hpj@urpla.net> - 2022-11-30 15:52 +0100
    [Python-de] Re: Code Style Review Marc Haber <mh+python-de@zugschlus.de> - 2022-12-01 21:16 +0100
      [Python-de] Re: Code Style Review Stefan Schwarzer <sschwarzer@sschwarzer.net> - 2022-12-01 23:58 +0100
        [Python-de] Re: Code Style Review Marc Haber <mh+python-de@zugschlus.de> - 2022-12-02 18:10 +0100
          Re: [Python-de] Re: Code Style Review "Peter J. Holzer" <hjp-usenet3@hjp.at> - 2022-12-03 14:36 +0100

csiph-web