13

Delphiの土地とQtの土地のどちらに冒険するかという違いがある場合、どちらを選びますか?私はそれらが完全に比較可能ではないことを知っています。私は、Builder C ++(ほぼDelphi)とMFC(ほぼQt)でWindows開発の経験があり、BuilderC++での作業にもう少し時間がかかります。分析では、Qtのクロスプラットフォーム機能を取り出してください。

両方で働いた人の返事と、フレームワークや環境などをどのように比較するのかを期待しています。

よろしくお願いします。

4

10 に答える 10

24

UI フレームワークについて話している場合は、Qt を IDE (この場合は Delphi) ではなく VCL と比較する必要があります。私が頑固者であることは承知していますが、Delphi は IDE、Object-Pascal は言語、VCL はグラフィカル フレームワークです。

そうは言っても、VCL のパワーとシンプルさに匹敵するものはないと思います。Qt は素晴らしいですが、VCL ではありません。

于 2008-09-16T14:35:37.873 に答える
18

編集: この回答は2008 年に書かれました。おそらく完全に役に立たないわけではありませんが、おそらくそれほど適切ではありません。塩でとる。

私は両方を使用し、最終的に Qt ルートに行きました。理由は次のとおりです。

  • Trolltech は、電子メールで迅速かつ 1 対 1 のサポートを提供します
  • Qt は革新し、強力な新機能を定期的に導入しています
  • Qt のドキュメントは素晴らしく、まれにそうでない場合でも、ソース コードを読むことができます。
  • Qt のソース コードがあると、ベース ライブラリ内でデバッグすることもできます。これは、多くの場合、私にとって命の恩人です
  • API は非常に一貫性があり、適切に設計されています。私たちはプロジェクトに新しい人を配置しました.1か月以内に彼らはツールキットの深い知識を示し、新しいクラスを非常に迅速に学ぶことができます.
  • 他の言語へのバインディングがあります。ルビーとパイソン。

C++ はやや欠点があります。コンパイル時間、パッケージング、および統合されていない IDE。しかし、Qt は C++ をより高級な言語のように感じさせます。QStrings は、たとえば、文字列処理のすべての問題を解決します。したがって、通常直面する C++ の追加の問題。私の経験では、Qt を使用している場合、より多くのバグのあるコードはあまり一般的ではありません。

また、Qt 用よりも Delphi 用のライブラリの方が多くありますが、Qt プロジェクトでは ac または c++ ライブラリを使用するだけでよいという事実と、Qt の機能が非常に充実しているため、多くの場合、何も調べる必要がないため、これは軽減されます。さらに遠く。

新しいプロジェクトに Qt ではなく Delphi を選択するのは奇妙な状況です。

于 2008-09-17T11:32:42.423 に答える
10

私ならデルファイを選びます。もちろん、パスカルホリックに尋ねても、彼は同じように答えるはずです。;)

Qt も問題ありませんが、VCL の方が洗練されているように感じます。しかし、それは私の長年の仕事かもしれないので、それはちょうどいいと感じています. Qt での私の経験は、あらゆる Win32 アプリを Web アプリケーションにすることができるGoGlobalの力のおかげで、クロス プラットフォームが実際には必要ないと判断された後、Delphi で書き直された短期間のプロジェクトに限定されていました。プラットホーム。

于 2008-09-16T15:28:25.080 に答える
6

それは本当にあなたのニーズと経験に依存します. 私は両方を使用してきました (ただし、実際に使用した最後の Delphi バージョンは Delphi 6 であり、現在 Qt 4.4 を使用しています)。

言語

C++ の長所:

  • C++ はより「標準的」です。たとえば、より多くのコード、ライブラリ、サンプルなどを見つけることができ、STL とブーストを自由に使用できますが、Object Pascal はよりエキゾチックな言語です。
  • Qt はさまざまなプラットフォームとコンパイラでコンパイルされます (Kylix は Qt に基づいています)。

Object Pascal の長所:

  • 一部の動的プロパティは言語に組み込まれており、MOC のような醜い回避策は必要ありません。
  • コンパイラは言語用に高度に最適化されており、実際に非常に高速です
  • 言語は C++ よりも複雑ではないため、エラーが発生しにくい

IDE

Qt の長所:

  • 厳密に言えば、Designer 以外に Qt 用の IDE はありませんが、好みの IDE (少なくとも Visual Studio と Eclipse) にうまく統合されます。
  • デザイナーは、Delphi フォームよりもレイアウトの方が優れています (注: これは Delphi 6 の経験に基づいており、現在のバージョンでは当てはまらない場合があります)。

Delphi の長所:

  • IDE は非常に洗練されており、使いやすくなり、Visual Studio を明らかに上回っています (私は Eclipse の経験がありません)。
  • ポイント2はありません...しかし、「統合」という流行語を割り当てる必要がある場合は、Delphi IDEに割り当てます

枠組み

最新の VCL が十分によくわからないので、他のものとの比較を残します。私はいくつかの発言があります:

  • どちらのフレームワークも、必要な機能のほとんどをカバーしています
  • どちらもソースコードが利用可能であり、これは IMO の必須事項です。
  • どちらも多かれ少なかれ一貫した構造を持っています-私はQtを好みますが、これは好みに依存します(注:QtがほとんどMFCであるとは決して言いません-私は長い間MFCを使用しており、QtとDelphiの両方を使用しています-そして.NET 、さらに言えば-はるかに優れています)
  • VCL には、特にビジュアル コンポーネントとの接続など、より DB 指向の機能があります。
  • Qt にはよ​​り多くのペイント (2D / 3D / OpenGL) 指向の機能があります

Qt IMO を語るその他の理由は、非常に優れたサポートとライセンスですが、それはニーズによって異なります。どちらのフレームワークにも大きなコミュニティがあり、

于 2008-09-18T13:02:15.850 に答える
5

Delphi と Qt の大きな違いは、Qt シグナル/スロット システムです。これにより、オブジェクト間に N 対 N の関係を簡単に作成し、密結合を避けることができます。

Delphi にはそのようなものは存在しないと思います (少なくとも、私が使用していたときにはそのようなものはありませんでした)。

于 2008-09-23T22:25:52.200 に答える
3

私は Qt/C++/Qt Creator の実験を始めたばかりですが、この「小さなかわいい野郎」が何年もの間私の鼻のすぐ下にあり、今注目していることに驚いたことを認めなければなりません。

それ (フレームワーク) はきちんとしていて、完全な機能を備えています (組み込みの XQuery サポートなど、.NET に欠けているものさえありました)。

作成された Qt アプリケーションのほとんどは、2D/3D/ゲームを扱っているようです。

マイナス面は、C++ を知らなければならないことと、QuantumGrid のような DevExpress の機能がないことだけだと思います。

単純なアプリケーション (ThumbsView のような画像ビューア) の 1 つを移植することを真剣に考えています。

そして、それは本当に同じコードベースから実行されます。まじ?実際に!

Kylix、Mono、Lazarus、Free Pascal は忘れてください。この Qt のものは、それらすべてを 10 回で打ち負かします。

Qt Creator は IDE とはかけ離れています。しかし、将来的には、より強力なデバッガー、コードの洞察とリファクタリング (少なくとも「名前の変更」のもの)、およびより意味のあるコンパイラ エラーが追加されることを願っています。

Pascal/C++ の経験がない人には、Qt の学習曲線を利用することを真剣にお勧めします。

于 2009-07-14T20:24:12.607 に答える
1

私はDelphiを選びますが、それはおそらく以前にプログラムしたことがあるためです。まだまだ多くの企業が利用しているようで、8年以上の経験を持つほとんどの人がどこかで遭遇しています。ほとんどのプログラマーは、それを使用するか、少なくともPascalを学ぶことに関係しているようです。新しい言語(C#)が(少なくとも部分的に)それに基づいているという事実は言うまでもありません。

于 2008-09-16T14:25:22.717 に答える
0

Qtはクロスプラットフォームであり、Kylixを数えるとDelphiはそれほど多くありません。Lazarusはクロスプラットフォームですが、まだ完全な機能ではありません。

于 2008-09-16T14:26:14.743 に答える
0

デルフィを選びます。私がそれについてより多くの経験を持っているという理由だけで。他に合理的な基準はないと思います。

于 2008-09-16T14:21:18.517 に答える