我在一个开发人员团队中工作,我们其中一人专门在Windows下工作,我主要在Mac OS X中工作.我们想要用C++或Objective-C开发基于C的应用程序但是我不是很了解如何进行跨平台开发项目.
使用Mac OS X在C++中工作是否可行?显然,他们面向Objective-C,但是对C++的支持也是如此.那些语言的跨平台开发呢?我会使用类似boost和某种UI库的东西.
有没有人有过开发多平台的经验,但允许应用程序在不需要VM的情况下本地运行?
编辑:现在我想要标记为正确的答案很多.似乎Qt是用C++开发它的方法.这可能适用于*nix,OS X和Windows,因此这对我们个人来说是最好的选择.如果我可以避免编写Objective-C,那么团队会坚持使用C++,那就更好了.如果我必须在Objective-C中编写GUI并进行混合和匹配,那么也不会太麻烦.
我在一家软件公司工作,该公司使用C++,MFC和Objective-C为Mac OS X和Windows生成软件.
是的,这绝对是可能的.
如果你用C++开发应用程序的"核心",你可能会得到最好的服务.在MVC应用程序中,C++部分将是模型,可能是控制器.对于与GUI和其他特定于操作系统的接口连接的代码,您应该使用本机API:Mac OS X上的Objective-C和Windows XP上的C#.
关于Mac的好处是你可以一起编译C++和Objective-C.您甚至可以使用Objective-C++,其中C++和Objective-C在同一编译单元中编译.不幸的是你不能用C#做这件事(有一种叫做托管C++的东西,这是一种不同的野兽).
我会避免使用Qt和wxWidgets等跨平台框架.它们都允许您开发跨平台应用程序,但这些应用程序的外观和感觉是低于标准的.我对wxWidgets更熟悉,它的设计非常适合Windows MFC应用程序设计范例.
编辑2009年5月14日,美国东部时间上午9:44:如果Qt现在允许原生平台的真实外观,它可能是一个不错的选择.我没有看过最新的产品,所以你可能想在设计自己的框架之前先看看它.在检查应用程序的结果以及您对Qt所需的设计范例的满意度之后,应该做出这个决定.
你可以看看Qt.我在Windows,Linux和Mac OSX项目上成功使用它.