2013-04-29 21 views
7

Ich erwäge, mit Qt eine eigenständige Windows-Anwendung auf OS X und möglicherweise Linux zu portieren. Ich habe Qt vorher noch nie benutzt. Ich weiß nicht, ob ich mit Qt 4 oder Qt 5 arbeiten sollte.Mit Qt 4 vs Qt 5, um Anwendung für Windows und OS X zu entwickeln?

Ich wäre interessiert, das Feedback von Entwicklern von ziemlich großen Anwendungen mit Qt 4 und 5 zu bekommen. Was sind die Vor-/Nachteile für jede Version?

Mehr Informationen über das Projekt:

Die Anwendung ist ein High-End-Werkzeug für die digitale Fotografie: Echtzeit HDR, Tone Mapping, etc., von großen Fotos in 96-Bit pro Pixel.

Die Anwendung ist derzeit die folgenden Technologien:

  • UI-Code: C#, C++/CLI, .NET 2.0 WinForm
  • Core-Algorithmen: C++, OpenMP, SSE

I planen, das Qt-Framework zu verwenden, um den UI-Code neu zu entwickeln. Ich habe die folgenden Einschränkungen:

  • Unterstützte Betriebssysteme: Windows XP, Vista, 7 und 8; OS X; (Linux)
  • Zwei baut: 32 und 64-Bit-
  • Anwendung muss in der Lage auf VMs (mit wenig oder ohne die Unterstützung von OpenGL)
  • Ausführungsgeschwindigkeit/Echtzeit-Aspekte sind wesentliche
  • Hauptentwicklungsumgebung laufen : Visual Studio unter Windows 7 64-Bit

Vielen Dank!

+0

Vertrauen Sie mir, beide sind völlig in Ordnung. Würden Sie es vorziehen, bei der bahnbrechenden Bibliothek zu bleiben, oder? Dann ist die Wahl offensichtlich. –

+2

@Will: Warum "geschlossen als nicht konstruktiv"?Ich denke, dass meine Frage ziemlich spezifisch ist. Ich habe die Projektbeschränkungen genau aufgelistet. Ich glaube, es gibt sachliche Gründe dafür, Qt 4 gegenüber Qt 5 oder umgekehrt im Kontext der Frage zu verwenden. Durch das Schließen blockieren Sie erfahrene Benutzer, um interessantes Wissen zu teilen. – AntoineC

+0

@ user2331479: Wir vermeiden aktiv "subjektive" Fragen. Das Ethos dahinter findet sich in [diesem Blogbeitrag] (http://blog.stackoverflow.com/2010/09/good-subjective-bad-subjective/). Es ist leider schwer zu machen. Ihre Frage, die nach Feedback und Vor-/Nachteile fragt, passt nicht genau in diese Form. Beachten Sie, dass die Antwort korrekt ist. Es sind nur ein paar Links und nicht viel anderes. Ihre Frage wurde deswegen markiert und ich stimmte zu. Wenn Sie der Ansicht sind, dass Sie Ihre Frage über den Blog als Leitfaden bearbeiten können, tun Sie dies und markieren Sie ihn, damit er wieder geöffnet wird. Und für weitere Informationen besuchen Sie [meta]. – Will

Antwort

1

Wenn Sie versuchen, OpenGL zu vermeiden, dann wird Qt 5 nicht gut passen, da es sich darauf konzentriert, es als Abhängigkeit für QML-Widgets und das Szenendiagramm zu verwenden. Das heißt nicht, dass Sie es überhaupt nicht verwenden können, aber es ist sicherlich etwas zu berücksichtigen, wenn Sie eine Abneigung gegen OpenGL haben.

Qt 4.8 ist perfekt ausgereift, die Codebasis ist in diesem Stadium ziemlich gut abgedeckt, könnte also besser passen, da die Zeichnungsbibliotheken nicht mit OpenGL gekoppelt sind.

+0

Vielen Dank für Ihr Feedback. Ich werde GL nicht für die Benutzeroberfläche verwenden. Mein Verständnis ist, dass ich noch reguläre Qt Widgets in Qt 5 benutzen kann, oder? Wenn ja, bringt Qt 5 andere Vorteile als Qt Quick/QML 2? Oder macht es vielleicht keinen Sinn, QT WIgets in Qt 5 zu verwenden? – AntoineC

+1

Sie können OpenGL vermeiden, wenn Sie Bestands-Widgets verwenden, aber viele Verbesserungen der Benutzeroberfläche stammen aus der Welt von QML/Qt Quick. Es gibt definitiv Verbesserungen in einer Reihe von Kernbereichen, daher lohnt es sich, die Liste hier zu betrachten: http://qt-project.org/doc/qt-5.0/qtdoc/qt5-intro.html und eine Entscheidung von dort zu treffen. –

0

Während die Änderung der Versionsnummer 4 bis 5 bezeichnet eine Hauptversion und zusätzliche Funktionalität, die Sie möglicherweise nicht brauchen, gibt es wahrscheinlich Bug-Fixes zu sein in 5 das könnte für dich von Interesse sein. Wenn Sie also daran denken, mit 4 zu gehen, werfen Sie einen Blick auf die Änderungslisten und Fehlerbehebungen in 5, bevor Sie diese endgültige Entscheidung treffen.

Verwandte Themen