将Python持久化层嵌入C++应用程序 - 是个好主意吗?

6
我将要编写一个应用程序,它有一个薄GUI层,一个非常庞大的计算层(进行计算密集型的校准和其他长时间运行的任务),以及一个相对简单的持久化层。我考虑使用C++(使用Qt来处理GUI部分)来构建GUI + 计算层。
现在 - 是否使用Python(使用SQLAlchemy)来构建持久化层并将其嵌入到C++应用程序中,让这些层通过轻量级数据传输对象(由C ++编写但可从Python访问)进行接口交互,是一个疯狂的想法?
(我倾向于另一种选择可能是从头开始使用Python编写应用程序,使用PyQt包装器,然后调用C ++执行计算任务)
谢谢, Rickard
1个回答

10
我会选择“替代”方法:
尽可能多地使用Python编写(可以使用GUI绑定PyQt或PySide),然后只在计算密集型部分(在性能关键时)中使用C ++(请查看Boost.Python)。
使用Python开发应该比使用C++更快,更容易,且更少出错(除非您是非常有经验的C++开发人员;即使如此也是如此)。通过Boost.Python公开C ++应该比另一种方式更容易。

感谢您的建议。我可能会采用这种方法。Boost.Python确实很好。 - Rickard

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接