2

我正在学习 Mac 编程,尤其是 Cocoa。它似乎是一个综合框架,提供了每个应用程序程序员需要的各种东西。Qt4 在一般层面上是相同的东西,除了它在其他平台上运行并使用 C++ 而不是 Obj-C。对我来说更重要的是,我使用过 Qt4,所以对它很熟悉,虽然不是专家。我一般是 Obj-C 和应用程序编程的新手,但了解 C++。

我对 Qt4 和 Cocoa 的比较感兴趣,对那些从另一个开始的人的提示(无论哪种方式),以及关于它们的内部、API 设计、预期用途、每个设计者如何决定事情应该如何工作的讨论感兴趣, ETC。

有哪些推荐读物?

(当然,我希望有真正经验的专业开发人员撰写严肃的著作,而不是激烈的战争、狂热的狂热或营销宣传。)

4

1 回答 1

3

到目前为止,我已经使用 Qt4 实现了一些跨平台应用程序(Windows 和 Mac),并且我仅将 XCode(Objective-C)用于 iPhone 应用程序开发 - 因此我没有将 Objective-C 用于本机的第一手经验Mac 应用程序。

我认为 Qt4 的最大优势是可移植性,我喜欢它。您不仅可以将整个 Qt 应用程序移植到不同的环境中,还可以通过少量努力创建更有用和可移植的标准 C++ 库(不使用 Qt4 类的库)。

另一方面,我认为 XCode/Objective-C 环境在项目管理和 UI 设计方面更加成熟,而且你可以在应用程序中使用全套 Mac-OS 原生调用。您可能知道 Objective-C 与 C++ 完全兼容,并且您可以使用任何第三方 C++ 库,但是如果您的主要环境是 XCode/Cocoa,您最终会发现自己主要编写无法移植到任何其他环境的 Objective-C 代码但是 Mac-OS/iOS。

因此,长话短说,我认为您的决定必须更多地基于您的长期需求,而不是任何环境/设计/语言/API 细节:

=> 如果您知道您将在未来 1-2​​ 年内为 Mac-OSX(或 iOS)构建应用程序并且没有可移植性要求,请使用 XCode/Objective-C 方法为 Mac 应用程序创建更坚实的基础发展。

=> 如果这是一个“Just One Mac/OSX Application”的事情,然后你会回到 Qt4 或其他环境,也许最好还是坚持 Qt4,享受可移植性的优势并使用你已经拥有的经验来减少开发时间。

于 2011-07-22T16:41:22.297 回答