[Python-de] Re: [Fwd: Re: Entwicklungsumgebung]

Marco Aschwanden PPNTWIMBXFFC at spammotel.com
Mit Jul 21 11:46:46 CEST 2004


Hallo

> ..., weil die GUI scheinbar direkt mit der Programmlogik
> verwoben wurde. Und ausserdem isses immer scheisse in nem Quelltext
> rumzupfuschen an dem man nicht selbst aktiv arbeitet.

Hatte genau das gleiche Problem mit Boa. Ich habe lange wxDesigner 
(kommerziell) verwendet und bin jetzt bei wxGlade für wxWidgets 8o) 
gelandet (http://wxglade.sourceforge.net/). Es produziert gut vererbaren 
Gui-Code... ich taste den generierten Code nie an, wenn wxGlade dies auch 
zulassen würde. Aber mir scheint der generierte Code gut und logisch 
struktiert und man kann immer noch Wünsche einbringen, denn das Teil ist 
am Entstehen. Falls einem etwas nicht passt, kann man den Code-Generator 
selber anpassen (ebenfalls in Python geschrieben).

> Was ich mich allerdings immer wieder frag - was finden die Leute an
> solchen Baukaestensystemen fuer GUIs so toll? Welchen Vorteil bringt es
> sich fuer die Konstruktion der GUI vom Quelltext zu loesen? Man muss ja
> nicht direkt in der WinApi programmieren, aber soviel zu tippen ist ja
> nun wxPython[1] wirklich nicht. Dafuer entspricht der Quelltext dann
> auch den eigenen Konventionen...

In einer Entwicklungsphase ist man schneller mit einem Designer. Ein Gui 
konsistent zu halten, das man im Blickfeld hat ist einfacher als 200 - 300 
Zeilen GUI-Code herumzuschieben. Unabhängigkeit (Ich will nicht abhängig 
sein von einem GUI-Designer) wäre für mich das einzige Argument, um von 
einem Designer Abstand zu nehmen. Im Fall von Python, ist der generierte 
Code jedoch einsichtig und selber von Hand anpassbar (JBuilder hat das 
auch sehr schön gelöst). Das XRC-Format garantiert Portabilität zu andern 
Designern und wird dadurch natürlich auch "upgradable". Ich muss nicht 
auch noch die Fehler im GUI-Design suchen, sondern kann mich auf die 
Implementation der Logik konzentrieren.
Der generierte Code folgt strengen Richtlinien, die man im Team sonst 
schwerlich umsetzen könnte (jeder hat so seine Konventionen).

> btw gibs hier noch jemanden, der zum programmieren ausschliesslich vim
> verwendet? *g*

Nein. Ich oute mich als Weichei. Ich arbeite für Python mit WingWares 
WingIDE (kommerziell) weil WingIDE die beste Code-Completion für Python 
bietet. Gerade wenn man mit so grossen Bibliotheken arbeitet wie 
wxWidgets, dann bin ich um jede "IntelliSense" Technologie dankbar. Wenn 
bereits erfasste Variablen beim Tippen automatisch übernommen werden 
können, oder wenn automatisch der Doc-String einer Methode/Funktion 
angezeigt wird, oder fehlende Klammern, ungültige Vergleiche und anderes 
mehr gleich beim Eintippen angezeigt wird, dann ist das enorm hilfreich 
und macht mich noch produktiver! Aber eben, ich bin ein Weichei, dass sich 
weder mi vi noch mit emacs anfreunden konnte.

Have fun,
Marco