2011-12-23 66 views
1

苹果公司为64位应用程序杀死了Carbon。我有一堆遗留代码,针对的是碳UI组件,我希望能够保持活力一段时间。其中大部分是插件和捆绑包,必须与主机平台同步64位。保留传统碳代码存活

Apple似乎假设的选择是丢弃所有遗留代码 并使用Cocoa重写。这在短期内不会发生,因为 相同的遗留代码也与PC绑定关联。

我考虑3个选项

(1)潜入可可,创建支持碳的小的子集 我确实需要一个兼容包。

(2)使用Cocoatron作为新的目标。在短期内桥碳碳共聚物,也许在更长的时间内转换为Mac和PC本地cocoatron。 (参考:http://cocotron.org/

(3)使用QT作为新的目标。见选项(2)。 (参考:http://qt.nokia.com/

我真的喜欢第四个选择,比如64位 碳测试,苹果打死的盗版拷贝,或兼容包明确意图只是 效仿碳。

+2

要给出一个不完全一般的答案,我们需要更多的细节。遗产代码的作用是什么?它是什么类型的应用程序?有没有我们可以学习更多的链接? – wadesworld 2011-12-29 04:12:39

回答

6

我会建议你选择选项1.为你的代码创建一个Cocoa UI包装可能不会像你想象的那么复杂。创建跨平台应用程序的常用方法是以跨平台C++创建应用程序的大部分,并为Mac UI使用Cocoa/Objective-C++,为Windows UI使用Windows API之一。

此选项还具有Apple完全支持并且API稳定且成熟的优势。

Cocotron是一个不错的主意,但到目前为止它还不够成熟(在我看来)提供了一个强大的跨平台解决方案。我知道有它的成功,但样本量很小。

Qt是一个选项。但是,它遭受了非Mac般的UI。在Mac上使用Qt应用程序总是感觉像是一个快速端口而不是原生应用程序,而且这种情况不太可能改变。

的“盗版碳运行”只是一种幻想,根本就没有办法获取可靠和绝对的工作没有机会分发。你需要找到另一种方式。

+0

关于Cocotron的IDK,但是GNUstep在Windows上运行得非常好,我上次尝试... – 2012-01-02 18:44:13