[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]