
Hi,
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? Wie werden Daten in Klasse(instanzen) abgelegt - in einem dict oder direkt als Attribut?
Ich weiss das das teilweise auch eine Glaubensfrage ist, aber mich wuerde einfach mal interessieren wie so die "Common Practice" ist, ohne 300 Python-Projekte im Quellcode studieren zum muessen.
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...
Andreas

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
_______________________________________________ python-de maillist - python-de@python.net http://python.net/mailman/listinfo/python-de

Hallo!
On Mon, 2 Jan 2006 02:54:33 +0100 Andreas Pakulat apaku@gmx.de wrote:
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? Wie werden Daten in Klasse(instanzen) abgelegt - in einem dict oder direkt als Attribut?
Also normalerweise greifst du direkt drauf zu, getter und setter werden oft nicht benötigt und wenn doch, dann nimmt man dafür Properties, was sogar noch eleganter ist.
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 würde das nehmen, was Python bietet und Qt nur für das verwenden was Python nicht selbst kann - es heißt ja nicht umsonst "with batteries included".
grüße, Marek
_______________________________________________ python-de maillist - python-de@python.net http://python.net/mailman/listinfo/python-de
participants (3)
-
Andreas Pakulat
-
Diez B. Roggisch
-
Marek Kubica