将Python持久层嵌入到C++应用程序中 - 好主意?

Ric*_*ard 2 c++ python orm embedded-language

说我要写一个带有薄GUI层的应用程序,一个非常胖的计算层(做计算量很大的校准和其他长时间运行的东西)和相当简单的持久层.我正在寻找用C++构建GUI +计算层(使用Qt作为gui部分).

现在 - 这将是一个疯狂的想法建立在Python的持久性层,使用的SQLAlchemy,并将其嵌入到C++应用,通过lightweigth数据传输对象让海誓山盟层接口(用C++编写,但是从蟒访问)?

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

谢谢,里卡德

Chr*_*heD 6

我会选择'替代'方法:

写尽可能在Python(你可以使用GUI绑定PyQt的或PySide),然后只写计算密集型部分(证明对性能的关键时),在C++(看看Boost.Python的).

使用Python进行开发应该比C++更快,更容易,更不容易出错(除非你是一个非常有经验的C++开发人员;然后仍然).通过Boost.Python公开C++应该更容易,反之亦然.