[Python-de] Klassendesign bei Python

Diez B. Roggisch deets at web.de
Mon Jan 2 10:49:11 CET 2006


> Ich bin grad dabei eine C++ App von mir nach Python zu portieren. Dabei
> stiess ich auf folgende Frage: Benutzt man in python ueblicherweise
> Getter/Setter Methoden oder greift direkt auf die Attribute von Objekten
> zu?

Ja. Wenn du Logik brauchst - also zb lazy-load oder so - dann nimmste 
properties.

> Wie werden Daten in Klasse(instanzen) abgelegt - in einem dict oder 
> direkt als Attribut?

Natuerlich direkt - ist ja auch letztlich nix als nen dict :)


> Zum anderen: Die UI der Applikation wird mit Qt realisiert und mich
> wuerde mal interessieren wie die Meinung der hier mitlesenden bezueglich
> der "Supportklassen" eines solchen Toolkits ist. Speziell gehts darum ob
> ich z.B. die von Qt bereitgestellten DOM Klassen nutze oder lieber die
> Python-eigenen. Haben letztere Vorteile die ein "Erlernen" der API
> sinnvoll machen wuerden - auf Anhieb wuerde mir da Iterator-Support
> einfallen... Oder Datumsklassen - die von Python (datetime und time
> Modul) finde ich etwas "umstaendlich" zu handhaben...

Ich habe auf diese Supportklassen immer verzichtet - denn sie sind wenig 
pythonisch, im Gegensatz zB zu ElementTree. Und die wirkliche Grund fuer die 
Dinger ist ja die erreichte plattformunabhaengigkeit - die du aber mit python 
auch so bekommst.

Freu' dich das es Qt ist :)

MfG Diez