跨平台Windows/OS X开发,具有大量现有代码库

Can*_*cer 6 c++ macos mfc cross-platform

对于使用MFC和WinAPI以C++编写的复杂应用程序,存在大量现有代码库,需要将其移植到Mac OS X.理想的解决方案是在不同平台之间使用尽可能多的代码,尤其是业务等代码逻辑.GUI可能会有所不同,具体取决于跨平台GUI可用的好工具.有一些低级别的OS调用在不同平台上会有所不同.主要目标不是最终​​需要单独开发和维护的两个单独版本的软件.

我一直在看Qt,但我很想知道其他的替代方案,以及人们过去如何解决这个问题.

  • 如果您要移植用MFC编写的现有应用程序,您将使用什么/如何使用它?
  • 如果您可以在两个平台上从头开始项目,您会使用什么/如何做?

Har*_*ich 5

几年前我们不得不做出类似的决定,并决定选择Qt.该应用程序是Windows Forms/Managed C++组合(我们没有跨平台要求),我们对一些ui工具包进行了评估,我们也考虑了Java.

如果您熟悉MFC,您可能会发现WxWidgets更"舒适",因为它的对象结构更接近于此.这实际上是让我们使用它的原因.Qt设计经过深思熟虑,更适合我们正在做的事情.Java被丢弃作为一种选择,因为我们内部并没有很多知识.

从头开始我会再次选择Qt(即使诺基亚正在进行一些事情)我还是喜欢这个工具包.我们可能会考虑的选项,当我们第一次评估时(由于项目的可用性和限制)Mono,Adobe Air或纯粹的基于Web的应用程序时我们没有考虑这些选项.