Frage

Wenn Sie den Unterschied hätten, ob Sie sich entweder in das Delphi-Land oder in das Qt-Land wagen würden, welches würden Sie wählen?Ich weiß, dass sie nicht völlig vergleichbar sind.Ich für meinen Teil habe Erfahrung in der Windows-Entwicklung mit Builder C++ (fast Delphi) und MFC (fast Qt), wobei ich etwas mehr Zeit mit Builder C++ verbracht habe.Bitte berücksichtigen Sie bei Ihrer Analyse die plattformübergreifende Fähigkeit von Qt.

Ich hoffe auf Antworten von Leuten, die mit beiden gearbeitet haben und wie er oder sie das Framework, die Umgebung usw. vergleichen würde?

Vielen Dank im Voraus für Ihre Antworten.

War es hilfreich?

Lösung

Bearbeiten:Diese Antwort wurde geschrieben 2008.Es ist wahrscheinlich nicht mehr so ​​passend, obwohl es wahrscheinlich nicht völlig nutzlos ist.Mit Salz einnehmen.

Ich habe beide verwendet und bin am Ende für die Qt-Route gelandet.Das sind die Gründe:

  • Trolltech bietet schnellen und persönlichen Support per E-Mail
  • Qt ist innovativ und führt regelmäßig leistungsstarke neue Funktionen ein
  • Die Qt-Dokumentation ist erstaunlich, und in den seltenen Fällen, in denen dies nicht der Fall ist, können Sie den Quellcode lesen
  • Wenn Sie über den Quellcode für Qt verfügen, können Sie auch in Ihren Basisbibliotheken debuggen, was mir schon oft das Leben gerettet hat
  • Die API ist sehr konsistent und gut gestaltet.Wir haben neue Leute in das Projekt geholt und innerhalb eines Monats zeigen sie tiefe Kenntnisse des Toolkits und können sehr schnell neue Klassen erlernen
  • Es verfügt über Bindungen zu anderen Sprachen, z.Ruby und Python.

C++ ist ein gewisser Nachteil, z.Kompilierzeiten, Paketierung und eine weniger integrierte IDE.Durch Qt fühlt sich C++ jedoch eher wie eine höhere Programmiersprache an.QStrings erleichtern beispielsweise die Handhabung von Zeichenfolgen erheblich.Daher sind die zusätzlichen Probleme mit C++, mit denen Sie normalerweise konfrontiert wären, z. B.mehr fehlerhafter Code, sind meiner Erfahrung nach bei der Verwendung von Qt weniger verbreitet.

Außerdem gibt es für Delphi mehr Bibliotheken als für Qt. Dies wird jedoch durch die Tatsache abgemildert, dass Sie in einem Qt-Projekt einfach eine C- oder C++-Bibliothek verwenden können und weil Qt so umfassend ausgestattet ist, dass Sie oft nicht danach suchen müssen weiter.

Es wäre eine seltsame Situation, wenn ich für ein neues Projekt Delphi gegenüber Qt wählen würde.

Andere Tipps

Wenn Sie UI-Frameworks sprechen, dann sollten Sie Qt mit der VCL sein zu vergleichen, nicht die IDE (Delphi in diesem Fall). Ich weiß, ich bin ein Pedant zu sein, aber Delphi ist die IDE, Object-Pascal ist die Sprache, und VCL ist die grafische Rahmen.

aber sagen, dass ich glaube nicht, dass es etwas gibt, das auch nur annähernd die Leistung und Einfachheit der VCL zu entsprechen. Qt ist groß, aber es gibt keine VCL.

Ich würde wählen Delphi. Natürlich fragen Sie jede pascalholic und er ist sicher genauso zu beantworten. ;)

Qt ist wieder in Ordnung, aber die VCL fühlt sich einfach mehr poliert. Aber dann meine Jahre der Arbeit mit, dass könnte sein, so ist es nur richtig anfühlt. Meine Erfahrung mit Qt wurde auf ein kurzlebiges Projekt beschränkt, die in Delphi wird am Ende neu geschrieben, nachdem ermittelt wurde, dass Cross-Plattform nicht wirklich durch die Kraft von GoGlobal das jedes win32 app einer Web-Anwendung machen, und deshalb auf jeder Plattform laufen.

Es hängt wirklich von Ihren Bedürfnissen und Erfahrungen. Ich habe mit beiden gearbeitet (müssen jedoch sagen, dass die letzte Version Delphi ich wirklich mit arbeitete, war Delphi 6, und ich arbeite derzeit mit Qt 4.4).

Die Sprache

C ++ Profis:

  • C ++ ist mehr "Standard", z.B. werden Sie mehr Code, Bibliotheken, Beispiele usw., und Sie können frei verwenden, um die STL und Boost, während Object Pascal ist eher eine exotische Sprache
  • finden
  • kompiliert Qt auf unterschiedlichen Plattformen und Compiler (Kylix basiert auf Qt, BTW)

Object Pascal Profis:

  • einige dynamische Eigenschaften sind bauen direkt in die Sprache, sind keine hässlichen Abhilfen wie die MOC benötigt
  • wird der Compiler hoch für die Sprache optimiert und in der Tat sehr schnell
  • ist die Sprache, weniger komplex als C ++ und damit weniger fehleranfällig

Die IDE

Qt Profis:

  • Genau genommen gibt es keine IDE für Qt neben dem Designer, aber es fügt sich perfekt in Ihre bevorzugte IDE (zumindest Visual Studio und Eclipse)
  • der Designer eine bessere Arbeit mit Layouts als Delphi Formulare (Hinweis: Diese basiert auf     Delphi 6 Erfahrung und kann nicht mit dem aktuellen Versionen wahr sein)

Delphi-Profis:

  • Die IDE wirklich poliert und einfach jetzt verwenden, und es schlägt klar IMO Visual Studio (ich habe keine Erfahrung mit Eclipse)
  • gibt es keinen Punkt 2 ... aber wenn ich das Schlagwort „integriert“ zuweisen musste ich es die Delphi-IDE zuweisen würde

Das Framework

Ich werde einen Vergleich zu anderen verlassen, da ich nicht weiß, das neueste VCL gut genug. Ich habe ein paar Bemerkungen:

  • beide Frameworks decken die meisten der benötigten Funktionalität
  • beide haben den Quellcode zur Verfügung, die ein Muss IMO ist
  • haben beide eine mehr oder weniger konsistente Struktur - ich ziehe Qt, aber das hängt von Ihren Vorlieben (Anmerkung: Ich würde nie sagen, dass Qt fast MFC - ich MFC für eine lange Zeit verwendet haben, und beide Qt und Delphi - und .NET, was das betrifft - sind viel besser)
  • hat die VCL mehr DB orientierte Funktionalität, insbesondere die Verbindung mit den visuellen Komponenten
  • hat Qt mehr Malerei (2D / 3D / OpenGL) orientierte Funktionalität

Weitere Gründe, die IMO für Qt sprechen, sind die sehr gute Unterstützung und die Lizenzierung, aber das hängt von Ihren Bedürfnissen. Es gibt große Gemeinschaften für beide Frameworks,

Ein großer Unterschied zwischen Delphi und Qt ist das Qt-Signal / Slots-System, das es einfach macht N-zu-N-Beziehung zwischen Objekten zu erstellen und zu enge Kopplung zu vermeiden.

Ich glaube nicht, so etwas in Delphi vorhanden ist (zumindest war es nicht so etwas, wenn ich verwenden, es zu benutzen).

Ich habe gerade angefangen zu experimentieren mit Qt / C ++ / Qt Creator und ich muss ich war überrascht, zugeben, dass dieses „kleine süße Bastard“ war nur unter meiner Nase für einige viele Jahre und ich achten Sie auf es gerade jetzt.

Er (der Rahmen) sieht ordentlich aus, feature-complete (selbst waren Sachen, die .NET wie inbuld XQuery-Unterstützung fehlt).

Es scheint, dass geschrieben meisten der Qt-Anwendungen mit 2D zu tun / 3D / Spiele.

Ich glaube, die Nachteile nur sind: mit C ++ zu wissen, und das Fehlen von DevExpress Goodies wie Quantum

.

ich ernsthaft überlege mir eine meiner einfachen Anwendungen zu portieren (ein Bildbetrachter wie ThumbsView).

Und es läuft wirklich von gleicher Code-Basis. FÜR REAL!

Vergessen Sie Kylix, Mono, Lazarus, Free Pascal. Die Qt Sache übertrifft sie alle in 10-mal.

Qt Creator ist weit von IDE. Aber ich hoffe, in Zukunft werden sie einen mächtigen Debugger, Code Insight und Refactoring hinzufügen (zumindest die „Umbenennen“ ein) und bedeutungsvolle Compiler-Fehler.

würde ich ernsthaft ohne Erfahrung in Pascal / C jemandem empfehlen ++ die Qt Lernkurve zu nehmen.

Ich würde wählen Delphi, aber das ist wahrscheinlich, weil ich es vorher programmiert haben. Es scheint, gibt es noch eine Reihe von Unternehmen, die sie verwenden, und fast jeder, 8+ Jahre expierence hat es irgendwo begegnet. Es scheint, dass die meisten Programmierer verwenden sie oder zumindest lernen Pascal beziehen können. Ganz zu schweigen von der Tatsache, dass neuere Sprachen (C #) darauf basieren (zumindest teilweise).

Wählen Sie Delphi, wenn Ihr Anliegen sind native Win32-Geschwindigkeit, eine erste Klasse RAD-Umgebung und Größe der ausführbaren Datei. Pick-QT, wenn Sie einen wirklich plattformübergreifenden Rahmen mit einer inzwischen flexible Lizenzpolitik gekoppelt müssen und nicht leicht aufgeblähten Code kümmern.

ich portiert einen alten Delphi-Programm unter QT / C ++, und ich muss sagen, dass QT der Rahmen ist, die in Bezug auf die Benutzerfreundlichkeit und Leistung (IMHO)

Nähe zu VCL kommt

Ich würde wählen delphi. Nur weil ich mit ihm mehr Erfahrung haben. Ich glaube nicht, dass es andere reasonabl Kriterien.

Qt ist Cross-Plattform, Delphi nicht viel, wenn wir Kylix zählen. Lazarus ist Cross-Plattform, aber nicht ganz Feature-complete noch.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top