我想开始在一些项目中使用Objective C,但是我不想使用任何与Apple绑定的框架和库。我可以用什么来编写跨across、Linux甚至Windows的可移植代码?
编辑:我想的是非常基础的库,比如FoundationKit等等。我想使用Objective C作为一种语言,并且我可以随时使用C和C++库。
发布于 2010-02-18 12:49:37
Objective-C在其所有支持的平台上都得到了gcc工具链的支持。当然,如果没有相应的库,Objective-C并不是特别有用。GNUStep是最广为人知的选项。GNUStep是NextStep/OpenStep库的开源实现,苹果的Cocoa框架就是从NextStep/OpenStep库演变而来的。随着Cocoa框架的发展,GNUStep通常要么没有遵循,要么出现了分歧。因此,它不是一个“跨平台的Cocoa”。在这一点上,它可能更好地被视为一个完全不同的框架。尽管如此,如果您想使用Objective-C,GNUStep是一个可行的跨平台选择。
然而,在这个问题上,为什么是Objective-C?我是Objective-C的铁杆粉丝,但Objective-C的许多强大之处都可以在其他现代动态语言中找到,比如Python或Ruby。例如,PyQt是围绕Qt工具包的Python包装器,它是一个令人敬畏的跨平台环境,具有类似于用Objective-C编写代码的自由感觉。
发布于 2010-02-18 12:51:21
http://en.wikipedia.org/wiki/Objective-C#Today至少列出了一个选项(尽管我不能保证它有多新)。
发布于 2010-02-18 12:52:28
Objective C仅仅是一种语言。使用正确的编译器,您可以在您喜欢的任何平台上编写代码。然而,编写可移植的代码则是另一回事,因为您必须处理底层操作系统API调用和库。你可以去看看GCC编译器集合here。
https://stackoverflow.com/questions/2286370
复制相似问题