Zum Inhalt springen

Eure meinung zum QT-Framwork


swonson

Empfohlene Beiträge

Hallo Leute,

ich bin recht neu bei c++. Allerdings kann ich bereits programmieren. Derzeit kann ich C# und VB. Hinzukommen naürlich noch diverse Scriptsprachen, aber die tun hier nichts zur Sachen.

Ich möchte nun mit der C++ GUI Programmierung beginnen, nachdem ich 3 Grundlagenbücher von C++ durchgearbeitet habe.

Nun meine Frage: Was haltet ihr von GUI-Programmierung mit QT?

Ich habe bisher nur gutes gelesen und es scheint auch recht angesagt zu sein.

Ich wäre für jede Meinung dankbar.

grüße der Swonson

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich mache jetzt seit gut 4 Jahren Qt beruflich und es ist das beste GUI-Framework, dass ich je verwendet habe (wobei .NET schon nahe ran kommt). Mit "beste" meine ich, verständliche API, einfach zu bedienen, einfach zu verstehen, sehr gute Doku und falls die mal nicht reicht, kann man direkt in den Source gucken.

Die Platformabhängigkeit ist natürlich auch super, MacOS, Windows und Linux (GUI-technisch) mit einer Klappe.

Ich will Qt übrigens auch abseits der GUI nicht mehr missen. Die ganzen nicht-GUI-Klassen (Container, QtConcurrent, QSql, QIODevice, ...) finde ich auch recht intuitiv.

Qt baut übrigens grad massiv im Mobile-Sektor aus.

Link zu diesem Kommentar
Auf anderen Seiten teilen

wobei .NET schon nahe ran kommt

.NET ist sicher auch ein schönes Framework, aber leider halt nur auf MS Systeme beschränkt. Man kann zwar mit Mono auch portieren, aber das ist natürlich immer etwas bedenklich

Qt baut übrigens grad massiv im Mobile-Sektor aus.

Das stimmt, das habe ich noch nicht getestet, aber die Videos, die ich dazu gesehen habe, sehen sehr viel versprechend aus.

Bei Qt muss man sich zu Beginn immer etwas an die Struktur gewöhnen und dass man eben aus seinen Klassen die moc-Klassen erzeugt, die dann erst kompiliert werden.

Ich kenne im Moment kein Framework, dass auf so vielen Plattformen verfügbar ist und sich so gut integrieren lässt.

Link zu diesem Kommentar
Auf anderen Seiten teilen

.NET ist sicher auch ein schönes Framework, aber leider halt nur auf MS Systeme beschränkt. Man kann zwar mit Mono auch portieren, aber das ist natürlich immer etwas bedenklich

Wie ich bereits sagte, meinte ich mit "beste" nicht die Platformaabhängigkeit, sondern hauptsächlich die Anwendungs des Frameworks. Da fand ich Qt und .Net ähnlich einfach und verständlich. Im Gegensatz zu anderen Frameworks erreicht man mit relativ wenig Code relativ viel (z.B. im Gegensatz zu MFC, Win32-Api), ist aber trotzdem nicht eingeschränkt und hat quasi alle Möglichkeiten offen (z.b. im Gegensatz zu VB).

Bei Qt muss man sich zu Beginn immer etwas an die Struktur gewöhnen und dass man eben aus seinen Klassen die moc-Klassen erzeugt, die dann erst kompiliert werden.

Für den Anfang kriegt man das erstmal kaum mit, das geschieht erstmal automatisch im Hintergrund. Va. wenn man direkt mit Qt Creator (würde ich empfehlen), oder mit einem Visual Studio mit Qt Integration anfängt.

Moc und Uic wird erst interessant, wenn man wirklich verstehen will, wie das Zeug intern funktioniert, oder wenns eben mal Probleme gibt (unresolved Symbol: Blubb::metaObject() ist da mein Favorit ;) ).

C++ GUi-Programmierung mit Qt4

Damit habe ich angefangen. Fand das Buch recht gut um Qt kennen zu lernen und die grundsätzlichen Funktionsprinzipien zu verstehen.

Allerdings ist das Buch in der letzten Auflage afaik auf Stand von Qt 4.3 (oder 4.4).

Da würde ich zu etwas neuerem greiffen. Das hier ist zwar auf Stand 4.6 was momentan ausreichend wäre, hat aber schlechte Bewertungen. Ich kenne das Buch leider nicht selbst.

Dazu sollte man sagen, dass zum grundsätzlichen Verständnis von Qt4 auch das erste Buch ausreicht, daran hat sich auch bis Qt 4.7 nichts geändert und daran wird sich auch mit Qt 4.8 nichts ändern. Seit 4.3 sind aber einige Erweiterungen dazugekommen, bzw. ausgereift, die ich ganz interssant finde. Wenn man sich in diese Einarbeiten will und Qt grundsätzlich erstmal verstanden hat, kommt man auch mit der Qt-Doku und Internet gut zurecht ;)

Link zu diesem Kommentar
Auf anderen Seiten teilen

Für den Anfang kriegt man das erstmal kaum mit, das geschieht erstmal automatisch im Hintergrund. Va. wenn man direkt mit Qt Creator (würde ich empfehlen), oder mit einem Visual Studio mit Qt Integration anfängt.

Moc und Uic wird erst interessant, wenn man wirklich verstehen will, wie das Zeug intern funktioniert, oder wenns eben mal Probleme gibt (unresolved Symbol: Blubb::metaObject() ist da mein Favorit ;) ).

Ich hatte mit Qt 3 angefangen und durch OSX und Linux bin ich eben eher Konsole gewöhnt. Heute nutze ich aber auch den Creator, nur wenn ich eigene Makefiles schreibe, dann muss eben eben doch wissen wie es funktioniert.

Ansonsten full'ack

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo,

cool danke für die Infos über Qt.

Ich bin ja noch neu in C++, kann aber schon Java und C#. Und ich möchte ja auch einmal C++ ohne .NET können und da ist diese Lösung eine gute Möglichkeit für grafische Anwendungen z. B. unter Linux.

Ich habe auch was von GTK+ gehört, was sehr C++ ähnlich sein soll und man könnte damit angeblich mit GIMP ganz einfach eine grafische Oberfläche für Programme erstellen. Ist das was anderes wie Qt? Ist Qt besser?

MFG derwunner

Link zu diesem Kommentar
Auf anderen Seiten teilen

Also GTK ist C und nicht C++, also NICHT objektorientiert. Ausserdem liest man immer mal wieder, das GTK schon im sterben liegt.

Ausser GIMP und dem Gnome Desktop sind mir auch keine größeren Projekte auf GTK-basis bekannt (um nicht zu Lügen, Maemo 5 auf dem N900 ist GTK, wird aber durch den Nachfolger Meego abgelöst, was auf Qt basiert).

Ich hab mir schon öfter mal GTK-Code angesehen, ich würd rein schon wegen der fehlenden Objektorientierung nicht unbedingt damit entwickeln wollen.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ok, da hast du Recht, habe nochmal bei Wikipedia nachgeschaut, Wikipedia sagt das dazu: GTK+ ? Wikipedia

Es gibt aber durchaus eine Anbindung an C++ im Rahmen des GNOME Projekts. Außerdem hat Mono Develop eine Anbindung an C# geschaffen.

Jetzt bin ich aber schon etwas verwirrt, im Code Beispiel von Wikipedia gibt es Methoden. Wäre mir neu, dass es in C schon Methoden gab?

MFG derwunner

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ohne jetzt extra nochmal nachzusehen:

Gtk+ ist ein C++-Binding von Gtk, d.h. da wurde mal ein Set von Wrappern entwickelt, um das ganze Objektorientiert benutzen zu können, selbiges für .Net.

Genauso kannst du Qt auch mit Python oder Java benutzen, das soll aber, was ich so gelesen habe, mehr schlecht als recht funktionieren.

Wenn schon Gtk, dann würde ich es allerdings nativ benutzen wollen, also mit purem C.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...