私は現在、いくつかの既存の大きなC++コードを使用してツールを開発しています。私は現在、model-view-controller(MVC)デザインの使用を考えています。モデルには、すべてのC++コードが含まれている必要があります。ビューはユーザーに表示されるものであり、コントローラーは基本的にモデルとビューの間の接着剤です。
私が探している機能は次のとおりです。
- MVCによる拡張可能なデザイン
- テキストユーザーインターフェイス(TUI)、ターミナルおよびグラフィカルユーザーインターフェイス(GUI)オプション
- GUIはいくつかのテキストファイルをロードする必要があります
- GUIは、ユーザーのテキスト入力を使用して、いくつかのアルゴリズムを実行し、いくつかの出力値を生成する必要があります
- GUIは最終的にポップアップ、保存、GNUプロットなどのグラフを表示する必要があります。
- C ++コードはEclipseでうまく機能します(ライブラリ、インクルード、ビルドオプション)
- やがて、新しいアルゴリズムがC ++コードに追加される予定ですが、これは大きな問題にはならないはずです。
今私は3つの解決策を見つけました:
- QT-> QT Creatorは、QTの利点にもかかわらず、Eclipseからの移行を面倒にするIDEの使用をほぼ要求しています。QTもGUIの周りに奇妙な構造を要求しているようですので、コントローラーの作り方について混乱しています。Eclipseプラグインは現在機能していません。QTとNokiaのFTPで見つかりません。
- GTKmm-> Cから来て、いくつかのものが必要な理由を理解するのが少し難しい場合があります。私はこれをMVCデザインで機能させることができると信じています。
- 共有ライブラリ(JNI)を使用したJavaSwing->JavaとC++を使用しますが、これは少し奇妙です。JNIを使用すると、既存のC++コードで追加の作業が必要になる場合があります。
私はJavaSwingの経験がありますが、QTとGTKmmの経験はほとんどありません。
では、経験の浅いUI開発者として既存のC ++コードをすでに持っている場合、GUIを作成するための最良の解決策は何でしょうか。