ist Qt der Platzhirsch?
-
Ich sammle Informationen über die Entwicklung unter verschiedenen Plattformen und bin bei Qt hängen geblieben. Es scheint leider gar nichts zu geben was da ran kommt oder? Es ist modernes C++, hat viele professionelle Entwickler, super Lizenz, sehr gute Seite und Dokumentation, natives Look und Feel, wird viel von namenhaften Firmen eingesetzt, die eigene IDE ist wie geschaffen für den leichten Einstieg.
Gibt es da ein Produkt was ernsthaft konkurrieren kann, wenn man professionell für verschiedenen Systeme programmieren will?
Auf was würdet ihr denn als Firma setzten wenn ihr ein neues plattformunabhängiges Programm entwickeln müsstet?
-
Glaube ich nicht, ich würde Qt nicht einsetzen da man die GUI nicht verändern kann. Das geht nur wen man den Quellcode ändert.
-
GUI nicht verändern kann
Was meinst du damit? Kannst dir doch eigene Widgets bauen.
Auf was würdet ihr denn als Firma setzten wenn ihr ein neues plattformunabhängiges Programm entwickeln müsstet?
Eine Aufteilung a la Client/Server entwerfen, bei dem das Frontend "austauschbar" ist. Und dann eine GUI mit Qt entwickeln. Wenn "Plattformabhaengigkeit" nicht entscheidend ist, dann hat .Net und Co auch einiges zu bieten.
-
knivil schrieb:
GUI nicht verändern kann
Was meinst du damit?
Forensuche!
http://www.c-plusplus.net/forum/viewtopic-var-t-is-271801.html
-
_trooper schrieb:
Glaube ich nicht, ich würde Qt nicht einsetzen da man die GUI nicht verändern kann. Das geht nur wen man den Quellcode ändert.
Naja, also Qt kann fast alle Elemente mit CSS stylen, und fürs Web gibts auch die Webkit integration.
Also mit Qt geht schon sehr viel. Natürlich gibts Spezialanforderungen, aber mit QML wird man evtl. sogar diese abdecken können.Qt ist schon sehr rund und ein gutes Paket.
Und im GUI Bereich sicherlich der Platzhirsch.Aber, Qt ist nicht standard C++, Qt hat seinen eigenen Kram mit dem Moc etc.
Vom reinen C++ Standpunkt her gesehen, ginge es noch mal um einiges Besser.Das Problem was andere Frameworks wie wxWidgets, GTK und ähnliche haben, ist einfach das bei Qt nun Nokia eine klare Richtung vorgibt, und richtig Gas gibt.
Da können viele Projekte nicht mit halten, des wegen bietet Qt auch viele Dinge, die andere nicht haben.
Andererseits ist das dann oft nicht mehr reine GUI, sondern weitere Komponenten, die bei einigen Libs wie GTK sowieso aussen vor wären.
-
Danke die Antworten haben dann doch meinen ersten Eindruck bestätigt.
Ich blicke nicht ganz durch bei dem "kann GUI nicht verändern" und auch nicht mit dem verlinkten Thread dazu. Kann mir einer erklären was damit gemeint ist?
Gruß
Ginger
-
Ginger schrieb:
Ich blicke nicht ganz durch bei dem "kann GUI nicht verändern" und auch nicht mit dem verlinkten Thread dazu.
Keine Angst, der Link war nicht so ernst gemeint, sein Problem blickt wohl niemand so richtig.
Man kann das Verhalten und Aussehen von Qt-Widgets wunderbar anpassen. Vieles geht über Style Sheets, für ausgefallenes Aussehen schreibt man einen QStyle. Model/View bietet die Delegates an, uswusf. In dem anderen Post wird klar, dass trooper noch nie ernsthaft mit Qt programmiert hat, sein Eindruck entstand durch oberflächliches Begutachten. Scheinbar programmiert er nur fltk & WinAPI.
-
Ich habe mehrere Jahre mit MFC gearbeitet, habe dann versucht auf wxWidgets umzusteigen und seit der LGPL arbeite ich mit Qt.
Qt ist meiner Meinung nach das derzeit umfangreichste und am stärksten vorangetrieben Toolkit für C++.
Danach mit etwas Abstand kommt wxWidgets (+ wegen multiplattform) und dann MFC (- wegen singleplattform).Qt ist einfach rund und logisch, alles passt irgendwie ineinander, es ist sehr sehr umfangreich, viele Dinge sind schon integriert, so dass man keine weiteren Bibliotheken einbinden muss. Der Qt-Creator (kostenlose IDE) ist für mich vollkommen ausreichend. Für meine Anforderungen sehe ich keine Nachteile gegenüber dem Einsatz der VS-IDE.
Die GUI kann man in Qt sehr einfach über StyleSheets ändern, falls das nicht reicht kann man seine eigene QStyle-Ableitung erstellen und das look and feel komplett beeinflussen (ohne am Quellcode von Qt was zu ändern).
Der MOC stört überhaupt nicht (man merkt ihn ja auch nicht) und vereinfacht vieles.Bei wxWidgets fehlt leider etwas die ManPower, zu wenig (aber gute) Entwickler, dadurch kommt es nicht richtig voran, ist aber trotzdem gut und man kann damit auch gut entwickeln. Manche Dinge sind in wx sogar besser gemacht als in Qt. Im Vergleich zu Qt fehlt aber einiges, zum Beispiel StyleSheets oder ist noch kompliziert zu realisieren, zum Beispiel HashMaps
über Macros.Übrigens ist bei Qt nur das Look nativ, d.h. es werden, soweit möglich, Funktionen des Betriebssystems genutzt um Elemente (z.B. Button) zu zeichnen. Das Feeling (wie sich die Elemente verhalten) wird von Qt nachgebildet.
-
l'abra d'or schrieb:
knivil schrieb:
GUI nicht verändern kann
Was meinst du damit?
Forensuche!
http://www.c-plusplus.net/forum/viewtopic-var-t-is-271801.htmlIch soll also die Forensuche nutzen, um herauszufinden, was der Threadsteller will? Das ist doch bescheuert.
-
knivil schrieb:
Ich soll also die Forensuche nutzen, um herauszufinden, was der Threadsteller will? Das ist doch bescheuert.
Ja, ist es (genauso wie der verlinkte Thread), es war aber nicht wirklich so ernst gemeint (ich hab angenommen dass du den eh schon mitbekommen hast, bist ja hier auch viel unterwegs).
-
Ich programmiere jetzt schon eine Weile Qt unter Windows und Linux (professionell und privat - wenn auch sicher nicht auf so hohem Niveau wie so mancher hier). Demnächst dann auch auf Mac (mir grauts jetzt schon
).
Als die Lizenzen für Qt noch nicht so freundlich waren habe ich mich für die private Entwicklung nach Alterantiven umgesehen: Folgendes angetestet:
- GTK
- Ultimate++
- wxWidgets
- Motif (weil ich damals meine Dipl-Arbeit damit verbrochen hatte)
Beruflich musste ich mich die letzten 3 Jahre mit MFC herumschlagen...und demnächst werd ich mir wohl Siverlight/Moonlight und das ganze WPF antun müssen *seufz* ...naja, wenns der Kunde will...
Aber jedes dieser anderen Toolkits hat seine eigenen Schwachstellen. Am besten hatte mir noch Ultimate++ für die private Programmierung gefallen - aber die Doku war damals leider grausamst (eigentlich war sie recht komplett - aber immer dann wenn man einen 'komplizierten' Sachverhalt nachschauen wollte war genau der Satz mit der wichtigen Information in unverständlichem 'tschechisch-englisch')
Also bin ich wieder zurück zu Qt. Mit den neuen Lizenzen echt Ok, und man bekommt es ja auch in Visual Studio Express reingeprügelt (wenn auch ohne designer...aber ich finde VS einfach eine bessere Entwicklerumgebung als den Qt Creator...ist natürlich Geschmackssache).
MMN ist die Doku-/Beispielvielfalt bei Qt einfach unschlagbar. Inzwischen bietet es auch die meisten Dinge, die ich sonst über Dritt-Libraries abdecken musste (threads, XML-support, ...) ...und man weiss ja nie wie lange kleinere Libraries weiterentwickelt werden. Nix ist nerviger als alle Nase lang eine eingestellte Library austauschen zu müssen!
...und für grafische Anwendungen ist die Kombination mit vtk ne feine Sache