我目前正在使用一些现有的大型 C++ 代码开发一个工具。我目前正在考虑使用模型-视图-控制器 (MVC) 设计。该模型应包含所有 C++ 代码。视图是用户看到的,而控制器基本上是模型和视图之间的粘合剂。
我正在寻找的功能是:
- 使用 MVC 的可扩展设计
- 文本用户界面 (TUI)、终端和图形用户界面 (GUI) 选项
- GUI 应该加载一些文本文件
- GUI 应该使用用户的一些文本输入来运行一些算法并生成一些输出值
- GUI 最终应该会弹出、保存、显示一些带有 GNU 绘图的图形。
- C++ 代码在 Eclipse 中运行良好(库、包含、构建选项)
- 及时将新算法添加到 C++ 代码中,这不应该成为一个大问题。
现在我找到了 3 个解决方案:
- QT -> QT Creator 几乎要求使用 IDE,尽管有 QT 的优点,但从 Eclipse 转到它会很麻烦。QT 似乎也需要围绕 GUI 的奇怪结构,所以我对如何制作控制器感到困惑。eclipse插件目前已经死了,我在QT和诺基亚的FTP上都找不到。
- GTKmm -> 来自 C,有时有点难以理解为什么需要一些东西。我相信我可以在 MVC 设计中完成这项工作。
- Java Swing 使用共享库 (JNI) -> 使用 Java 和 C++,这有点奇怪。使用 JNI 可能需要对现有 C++ 代码进行一些额外的工作。
我对 Java Swing 有一些经验,而对 QT 和 GTKmm 几乎没有经验。
那么当我作为一个没有经验的 UI 开发人员已经拥有现有的 C++ 代码时,制作 GUI 的最佳解决方案是什么?