[Python-de] Re: Code Style Review

Matthias Urlichs <[email protected]>
Newsgroups gmane.comp.python.general.german
Message-ID <[email protected]>
On 01.12.22 21:30, Marc Haber wrote:
> On Wed, Nov 30, 2022 at 10:47:53AM +0000, Matthias Urlichs wrote:
>> On 28.11.22 21:52, Marc Haber wrote:
>>> Die
>>> Alternative, jeder Funktion das Konfig-Dictionary als Parameter
>>> einzufüllen, finde ich noch schlechter lesbar. Wie ist in Python das
>>> normale Idiom für sowas?
>> Du verpackst deine Funktionen in ein Objekt und gibst __init__ die
>> Konfig als Parameter.
> Auch wieder so eine Klasse die man niemals instanziiert?

Wieso sollte man die nicht instanziieren?


>> dazu gibt es das "logging"-Modul, dem man (wenn's notwendig wird) eh
>> viel flexibler sagen kann, was es loggen soll, als mit einer Konstanten.
>> Außerdem ist "logging" weniger programmierfehleranfällig (wer hat noch
>> nicht versehentlich nicht-debug-Code unter ein "if debug:" gestellt …)
>> und visuell übersichtlicher. Und weniger tippen muss man auch …
> Weniger tippen kann ich jetzt nicht sagen, ich hab hier jetzt:
> logger = logging.getLogger(__name__)
> loggingStreamHandler = logging.StreamHandler()
> logger.addHandler(loggingStreamHandler)

Du hast

     logging.basicConfig(level=logging.DEBUG if args.debug else
logging.WARNING)
     log = logging.getLogger("main")

übersehen.

Außerdem meinte ich eher die eigentlichen Logging-Aufrufe. Da kannst du
dir die if-Abfrage plus Einrückung sparen und einfach

     log.debug("Test %d", 42)

schreiben.

>
> Das kann ich mir wohl nicht aussuchen, weil ich hier mit dem paho-Modul
> für MQTT koexistieren muss.

Musst du das wirklich? Mein "moat-mqtt"-Modul kann das unter anyio (und
da ist auch ein Broker dabei, den man im selben Programm mitlaufen
lassen kann).

"trio_paho_mqtt" funktioniert auch, wenn du anyio sagst dass es das
Trio-Backend verwenden soll.


--
Matthias Urlichs
Executive Principal Solution Architect (Linux)

noris network AG
Thomas-Mann-Straße 16-20
90471 Nürnberg
Deutschland

Tel +49 911 9352 1717
Fax +49 911 9352 100
Email [email protected]

noris network AG - Mehr Leistung als Standard
Vorstand: Ingo Kraupa (Vorsitzender), Joachim Astel, Florian Sippel
Vorsitzender des Aufsichtsrats: Stefan Schnabel - AG Nürnberg HRB 17689

_______________________________________________
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.