6

假设我要编写一个应用程序,它有一个薄的 GUI 层、一个非常大的计算层(进行计算量大的校准和其他长时间运行的东西)和相当简单的持久层。我正在考虑在 C++ 中构建 GUI + 计算层(使用 Qt 作为 gui 部分)。

现在 - 使用 sqlalchemy 在 Python 中构建持久层并将其嵌入到 C++ 应用程序中,让层通过轻量级数据传输对象(用 C++ 编写但可从 python 访问)相互接口,这会是一个疯狂的想法吗?

(我倾向于的另一种选择可能是从一开始就用 Python 编写应用程序,使用 PyQt 包装器,然后调用 C++ 来执行计算任务)

谢谢,里卡德

4

1 回答 1

10

我会采用“替代”方法:

尽可能多地用 Python 编写(您可以使用 GUI 绑定 PyQt 或 PySide),然后只用 C++ 编写计算密集型部分(当证明对性能至关重要时)(看看Boost.Python)。

使用 Python 进行开发应该比使用 C++ 更快、更容易且更不容易出错(除非您是一位非常有经验的 C++ 开发人员;然后仍然如此)。通过 Boost.Python 公开 C++ 应该比反过来更容易。

于 2010-04-15T09:03:04.517 回答