Warum wird Qt so selten verwendet?

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Benutzeravatar
name
User
Beiträge: 254
Registriert: Dienstag 5. September 2006, 16:35
Wohnort: Wien
Kontaktdaten:

str1442 hat geschrieben:
Sei's drum, ich hab nicht vor kommerzielle Software zu entwickeln. Entweder wird es OpenSource oder nur für mich intern
Das schließt sich nicht aus. OpenSource kann auch kommerziell verkauft werden. Grade die GPL erlaubt es, Software gegen Geld zu verkaufen. Genau genommen bedeutet das, man bezahl einmal für den Code, und hat dann alle GPL Privilegien. Auch Vervielfältigung und Weiterverteilung. Im Grunde ist es also möglich, die Software nur einmal zu kaufen, und dann nach sonstwohin weiterzuverteilen, aber die Möglichkeit des Geld Verdienens besteht. Dieser hypothetische Fall dürfte auch eher unwahrscheinlich sein, grade bei Softwareunternehmen.
Womit man mit Qt wieder kein Problem kriegt, wenn mans innerhalb der Richtlinien der GPL vertreibt.
Ohloh | Mein Blog | Jabber: segfaulthunter@swissjabber.eu | asynchia – asynchrone Netzwerkbibliothek

In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.
lunar

Genau genommen könnte man sogar Qt selbst weiter verkaufen.

@BlackJack:
Interessant, das wüsste ich nicht. Das ist natürlich ein echter Nachteil, wenn man proprietäre Software entwickelt.
burli
User
Beiträge: 1156
Registriert: Dienstag 9. März 2004, 18:22

Naja, ich hab noch keine Gründe gehört wieso ich ein anderes Toolkit verwenden sollte. Sollte ich wirklich mal in die Verlegenheit kommen schau ich mir lieber mal die Lizenzen an und kauf zur Not eine.

Im Moment toppt Qt einfach vor allen mit den bereits von lunar genannten Features. Zusätzlich fehlt mir bei wx einfach die Möglichkeit, Dock Widgets übereinander zu legen.
farid
User
Beiträge: 95
Registriert: Mittwoch 8. Oktober 2008, 15:37

Leonidas hat geschrieben:Verstehe ich das richtig? Die Software die du geschrieben hast, hätte BSD sein dürfen? Dann wäre das inzwischen mit Qt4 kein Problem gewesen.
Ja, richtig. Aber das war noch zu Qt3 Zeiten... ;)
abgdf

Hi,

wenn man kommerzielle Software entwickeln wollte, müßte man sich wegen der Marktgegebenheiten wohl auf Windows konzentrieren. Denn vor allem Windows-Benutzer sind gewohnt, für Software zu bezahlen.
Auf Windows extra Qt zu installieren, ist aber auch nicht optimal.
Wenn man also so rein wirtschaftlich denkt, müßte man wohl am besten direkt für die WinAPI entwickeln. Das kann man mit "Pythonwin" mit Python (oder vielleicht mit IronPython und dem .NET-Framework ? (weiß nicht)) auch recht gut machen. Dann muß man auch keine zusätzlichen Lizenzgebühren für ein Toolkit bezahlen.
So seh' ich das, komme in den meisten Fällen aber auch sehr gut unter Windows mit Tkinter zurecht (obwohl ich Qt/PyQt unter Linux auch probiert habe und von dem Umfang auch sehr beeindruckt bin).

Was ich sagen will ist, wenn man verkaufen will, muß man die Lage anders betrachten, als wenn man frei von Finanzzwängen programmieren kann. Meistens macht marktorientiert programmieren leider weniger Spaß. Auf die WinAPI hat eigentlich kaum jemand Lust ...

Viele Grüße
lunar

abgdf hat geschrieben:Auf Windows extra Qt zu installieren, ist aber auch nicht optimal.
Muss man nicht, py2exe existiert, ich hab das selbst schon genutzt, um PyQt4-Software für Windows zu verpacken (samt NSIS-Installer). Es ist zwar nicht unbedingt trivial, aber der Aufwand ist ja einmalig, und verglichen mit der Zeit ...
Wenn man also so rein wirtschaftlich denkt, müßte man wohl am besten direkt für die WinAPI entwickeln.
... die man im Vergleich dazu in ein Plain-WinAPI-Programm investieren müsste, wohl geradezu nicht existent. Und wenn man dann dazu noch die Kosten der zusätzlichen Zeit für ein WinAPI Programm addiert, dann hat sich sogar die Qt-Lizenz amortisiert.

Zumal man das Packen mit py2exe mit neueren Wine-Versionen sogar unter Linux durchführen kann.
So seh' ich das, komme in den meisten Fällen aber auch sehr gut unter Windows mit Tkinter zurecht
Ohne jemandem nahetreten zu wollen, aber Tkinter kann sich nicht mal ansatzweise mit Qt4 messen. Für einfache GUIs mag das egal sein, aber für jede auch nur geringfügig komplexe GUI-Anwendung ist Qt4 weit überlegen. Tkinter kann ja noch nicht mal Systray-Icons ...

Ganz ehrlich, Wx oder Gtk kann man mit Qt4 vergleichen, aber Tkinter nicht, in keiner Hinsicht.
abgdf

Ohne jemandem nahetreten zu wollen, aber Tkinter kann sich nicht mal ansatzweise mit Qt4 messen. Für einfache GUIs mag das egal sein, aber für jede auch nur geringfügig komplexe GUI-Anwendung ist Qt4 weit überlegen.
Bestreite ich ja gar nicht. Ich sagte nur, für mich reicht's. Das deshalb, weil ich bisher nur kleinere GUIs gebraucht habe. Tkinter sieht unter Windows auch gar nicht mehr so schlecht aus:

http://anygui.sourceforge.net/screenshots.php
Ganz ehrlich, Wx oder Gtk kann man mit Qt4 vergleichen, aber Tkinter nicht, in keiner Hinsicht.
Naja, zumindest in der Hinsicht eben doch, daß man mit allen einfache GUIs bauen kann.

Gruß
DasIch
User
Beiträge: 2718
Registriert: Montag 19. Mai 2008, 04:21
Wohnort: Berlin

abgdf hat geschrieben:Naja, zumindest in der Hinsicht eben doch, daß man mit allen einfache GUIs bauen kann.
Nur vom Aussehen in der Umsetzung wirds mit Tkinter schnell "schwierig".
BlackJack

Bei einfachen GUIs nicht.
Benutzeravatar
wuf
User
Beiträge: 1529
Registriert: Sonntag 8. Juni 2003, 09:50

Hallo Forumfreunde
Ganz ehrlich, Wx oder Gtk kann man mit Qt4 vergleichen, aber Tkinter nicht, in keiner Hinsicht
Ohne euch nahe zu treten. Stimmt Tkinter ist nichts für Drag & Drop Programmierer.

@Lunar Was meinst du mit 'sysicons'. Gehe ich richtig in der Annahme dies sind die Programm-Start-Icons rechts unten in der Taskleiste?

Nebenbei. Mit Tkinter können durchaus grössere Anwendungen realisiert werden, wenn jemand die Übersicht bei 600+ Programmzeilen noch nicht verliert.

Gruss wuf :wink:
Take it easy Mates!
yipyip
User
Beiträge: 418
Registriert: Samstag 12. Juli 2008, 01:18

...der Spruch mit den 600 Programmzeilen kommt mir
irgendwie bekannt vor... :wink: :wink:
lunar

BlackJack hat geschrieben:Bei einfachen GUIs nicht.
Was ist eine "einfache" GUI? Eine mit wenigen Widgets? Oder eine, die nur bestimmte Widgets nutzt? Bei Tkinter ist schon eine GUI, die nur ein einziges Kalender-Widget enthalten soll, nicht mehr trivial, weil Tkinter dafür keine fertigen Widgets mitbringt.

Ich würde das eher so formulieren: Tkinter ist für GUIs mit wenigen Widgets, die nur aus einer bestimmten Menge von Widgets kommen, durchaus geeignet. Das trifft den Kern des Pudels doch eher.
@Lunar Was meinst du mit 'sysicons'. Gehe ich richtig in der Annahme dies sind die Programm-Start-Icons rechts unten in der Taskleiste?
Ich meine keine Programm-Start-Icons. Bei Windows meine ich die Symbole direkt neben der Uhr, bei den meisten Desktop-Umgebungen unter Linux nennt sich das Systembereich:
Bild
Nebenbei. Mit Tkinter können durchaus grössere Anwendungen realisiert werden, wenn jemand die Übersicht bei 600+ Programmzeilen noch nicht verliert.
Man kann auch mit der WinAPI komplexe GUI-Programme schreiben. Ich stelle nur in Frage, dass das praktikabel ist. Tkinter fehlen viele komplexere Widgets, wie beispielsweise Baumansichten, Kalender-Widgets, Datumseingabe-Widgets, etc. Dann hat Tkinter keine hardware-beschleunigten Zeichenoperationen, und vermisst viele Komfort-Features wie "Aktionen" zur einheitlichen Erstellung von Menüs und Toolbar oder die Trennung von Modell und Darstellung. Ich denke die Liste ließe sich noch fortsetzen.

Abgesehen davon, ist Tkinter hier eigentlich nicht Thema. Ich denke nicht, dass wir das jetzt ausdiskutieren müssen, da meine Meinung von Tkinter bekannt ist, und sich auch nicht ändern wird, ebenso wie mir bewusst ist, dass einige hier Tkinter durchaus mögen. Insofern können wir auch wieder zum Thema zurückkehren.
BlackJack

Wieso nur wenige Widgets? Ausserdem kann man Widgets ja nachrüsten oder selber implementieren.

Und das trifft des Pudels Kern eher als *was*? Du beschreibst einfache GUIs und das trifft's besser als "Einfache GUIs"!?

Mal davon abgesehen, dass der Umfang für mich bis jetzt immer ausgereicht hat, um einem Kommandozeilen-Programm etwas zum Mausschubsen zu verpassen, habe ich schon einige sehr aufwändige Tk-GUIs in Aktion gesehen.
abgdf

An Qt hat mich z.B. besonders beeindruckt:

http://doc.trolltech.com/3.3/qtable.html#details
QTable efficiently supports very large tables, for example, tables one million by one million cells are perfectly possible.
Klar, so leistungsfähig sind die Widgets von Tkinter sicherlich nicht. Aber trotzdem für Vieles ausreichend.

War aber nicht direkt mein Punkt. Ich meinte eher:

Kommerzielles Programmieren -> Windows -> Pythonwin

Gruß
lunar

Die Doku ist veraltet, Qt4.4 ist mittlerweile aktuell, und da hat sich gerade an Listen, Tabellen und Baum-Widgets durch die Einführung der MVC-Funktionalität viel geändert. Qt4 kommt mit großen Datenmengen wesentlich besser zurecht als Qt3. Qt3 hatte da durchaus noch Probleme, zwar nicht unbedingt bei Tabellen, wohl aber beispielsweise bei Listviews. Deren Probleme waren verantwortlich für eine ganze Reihe von Performance-Problemen in KDE (z.B. die schier unendliche Zeitspanne, die der Konqueror zum Löschen von Dateien brauchte).
Benutzeravatar
wuf
User
Beiträge: 1529
Registriert: Sonntag 8. Juni 2003, 09:50

Hier eine grössere Anwendung die mit Tkinter inklusive PMW erstellt wurde.

@yipyip Deine Vermutung ist richtig :lol:

@lunar Danke für deine Erklärungen. Hier unter Linux kann ich das Icon meiner Tkinter-Anwendung einfach mit einem Link mit der System-Taskbar verbinden, welches für mich genügt.

Bild
Die grafische Darstellung ist eine rein intuitive Sache.

Edit: Sorry es war natürlich nicht meine Absicht euch zum heulen zu bringen. skaliert mit GIMP

Gruss wuf :wink:
Zuletzt geändert von wuf am Mittwoch 12. November 2008, 11:27, insgesamt 4-mal geändert.
Take it easy Mates!
derdon
User
Beiträge: 1316
Registriert: Freitag 24. Oktober 2008, 14:32

Benutz für große Bilder doch bitte services wie imageshack.us, es ist schließlich nicht jeder mit nem Superspeed-DSL-Turbosurfer-Komfort-XXL-PLus-Paket unterwegs :wink: Und nebenbei wird auch noch das "wunderschöne" PHPBB2-Layout zerstört, was alle hier zum Heulen bringt.
lunar

Wie viele LoC sind das nur für GUI?

Im Übrigen ist ein Systray-Icon nicht dafür da, eine Anwendung zu starten. Im Gegenteil, es repräsentiert eine laufende Anwendung und ermöglicht den Zugriff auf deren Funktionalität bzw. die Anzeige ihres Status ohne ein permanent geöffnetes Fenster. Dazu gehören beispielsweise ein Mailclient, der im Hintergrund läuft, regelmäßig die Postfächer anzeigt und die Anzahl der neuen Nachrichten anzeigt, oder der IM-Client, der bei ausgeblendeter Kontaktliste trotzdem die Verbindung aufrecht erhält und bei neuen Nachrichten entsprechende Benachrichtigungen anzeigt.

Das ist mit Tkinter schlichtweg nicht möglich, da Tkinter dafür keine Widgets anbietet. Die plattformübergreifende Implementation dieser Funktionalität ist auch nicht gerade trivial.

Im Übrigen solltest du derart riesige Bilder nicht unskaliert einbetten.
Benutzeravatar
wuf
User
Beiträge: 1529
Registriert: Sonntag 8. Juni 2003, 09:50

Hallo lunar

Danke für deine weiteren Ausführungen. Bin bis jetzt noch nicht mit SysIcons konfrontiert worden. Werde dies aber noch eingehender studieren.

Betreffs LoC's sind es ca 10'000+. Es ist schwierig genau zu ermitteln da ich bei dieser Anwendung MVC und PEP-8 noch nicht sauber eingehalten habe.

Gruss wuf :wink:
Take it easy Mates!
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

wuf hat geschrieben:Betreffs LoC's sind es ca 10'000+. Es ist schwierig genau zu ermitteln da ich bei dieser Anwendung MVC und PEP-8 noch nicht sauber eingehalten habe.
Das hat doch keinen Einfluss auf die Messbarkeit der LOC?

Gibts von dem Screenshot eine größere Version? Ich mag ja nicht schon wieder meckern, aber im Moment sehe ich da nur irgendwas kleines buntes. Imageshack ist da natürlich das was einem als erstes Einfällt, aber ich persönlich finde dass Imageshack eigentlich immer wahnsinnig lahm ist.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Antworten