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


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

[Python-de] Re: Code Style Review

From Marc Haber <mh+python-de@zugschlus.de>
Newsgroups de.comp.lang.python
Subject [Python-de] Re: Code Style Review
Date 2022-12-02 18:10 +0100
Message-ID <Y4oxmn+V/MnBuloo@torres.zugschlus.de> (permalink)
References <tm2jhn$1k5h8$1@news1.tnib.de> <25b8d1d4-d6e2-22ee-4bed-ec76227fa65d@sschwarzer.net> <Y4kLkGxr+4DhQto0@torres.zugschlus.de> <62b38fd1-39a1-9867-9ac4-b50bda4a4ddd@sschwarzer.net>

Show all headers | View raw


On Thu, Dec 01, 2022 at 11:58:31PM +0100, Stefan Schwarzer wrote:
> On 2022-12-01 21:16, Marc Haber wrote:
> > On Tue, Nov 29, 2022 at 06:18:38PM +0100, Stefan Schwarzer wrote:
> > > Du kannst einfach von überall aus dem Modul auf das
> > > `config`-Objekt zugreifen und brauchst auch kein `global`.
> > > Die Klasse wird nie instanziiert, sondern nur als Namespace
> > > benutzt.
> > 
> > Habe ich ausprobiert, funktioniert. Nur pylint meckert:
> > too-few-public-methods: Too few public methods (0/2)
> 
> Hihi, ja, das ist wieder das "Problem" mit Pylint. ;-)

Das ist so eine Warning, die ich vermutlich irgendwann global per
Konfigurationsfile ausschalten werde, genauso wie die, die
allgemein übliche Variablennamen wie "i" für einen Zähler oder "ts" für
einen Timestamp als "nicht ím snake_case geschrieben" anmeckert.

> > Und eigentlich ist das doch auch nur ein Satz globaler Variablen auf
> > Steroiden.
> 
> Ja, das kann man so sehen. Ich finde die Extra-Klasse ganz
> schön, um zusammengehörige Objekte zu gruppieren. Ich würde
> das hier wahrscheinlich machen, aber man kann auch
> argumentieren, dass es bei drei(?) Objekten in der Klasse
> auch ok ist, Variablen auf der Modul-Ebene zu verwenden.
> Letztlich ist das Geschmackssache, denke ich.

Ich habe das Gefühl, dass in python ganz besonders wenig als
"Geschmackssache" durchgeht und ziemlich viel "das schreibt und
formatiert man so, basta" gehandhabt wird. Daran muss ich mich erstmal
gewöhnen, ich komme eher aus der "there is more than one way to do it"
Ecke. Aber ich versuche, ein Gefühl zu bekommen, vielleicht gefällt es
mir ja.

Ich habe sehr viel in Perl gemacht, weil es für alles und jedes ein
Modul gibt, das ist in Python (inzwischen) auch so, und einiges in ruby,
weil das wenn man im puppet-Umfeld arbeitet einfach die "natürliche"
Sprache ist.

> > Ich finde es eigentlich ganz gut, wenn es für Konfigurationsvariablen
> > auch eine entsprechende Kommandozeilenoption gibt. Auf diese Weise kann
> > man die regelmäßig verwendeten Optionen in die Konfigurationsdatei
> > schreiben und wenn man es doch mal anders braucht auf der Kommandozeile
> > überschreiben.
> 
> Wenn du eine starke Überschneidung zwischen der
> Konfiguration im allgemeinen und der Konfiguration von der
> Kommandozeile hast

Das ist bei meinen kleinen praktischen Kommandozeilentools recht häufig
der Fall. Erschwerend kommt hinzu, dass ich eine schwere Abneigung gegen
ini-Files habe und yaml vorziehe.

> Ich finde das gut, dass du mit verschiedenen Ansätzen
> experimentierst. Dann bekommst du ein noch besseres Gefühl
> dafür, welche Vor- und Nachteile verschiedene Ansätze haben.

Darum geht es mir ja, ich möchte ein Gefühl für die Sprache bekommen.
Das Logging-Modul gefällt mir schonmal so gut, dass ich mich bei meiner
nächsten größeren perl-Arbeit¹ an den python-Idiomen orientieren werde.

Grüße
Marc

¹ das Logging in Debians adduser
(https://tracker.debian.org/pkg/adduser) ist grauslich, das gehört
dringend mal gerade/orthogonal gezogen, am besten noch vor dem nächsten
Freeze

-- 
-----------------------------------------------------------------------------
Marc Haber         | "I don't trust Computers. They | Mailadresse im Header
Leimen, Germany    |  lose things."    Winona Ryder | Fon: *49 6224 1600402
Nordisch by Nature |  How to make an American Quilt | Fax: *49 6224 1600421

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