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:

Sonntag 9. November 2008, 21:33

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

Sonntag 9. November 2008, 21:59

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: 1116
Registriert: Dienstag 9. März 2004, 18:22

Montag 10. November 2008, 09:06

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

Montag 10. November 2008, 15:10

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

Montag 10. November 2008, 16:07

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

Montag 10. November 2008, 16:21

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

Montag 10. November 2008, 16:33

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: 2465
Registriert: Montag 19. Mai 2008, 04:21
Wohnort: Berlin

Montag 10. November 2008, 16:40

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

Montag 10. November 2008, 16:44

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

Montag 10. November 2008, 18:51

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

Montag 10. November 2008, 19:11

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

Montag 10. November 2008, 19:19

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

Montag 10. November 2008, 20:25

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

Montag 10. November 2008, 20:34

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

Montag 10. November 2008, 20:38

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).
Antworten