我想开始尝试使用 Cocoa 和 Mac OSX 编程。此时我不太关心 Objective C 语法/结构/行为,但更好奇的是编辑器和/或 IDE 方面的有效设置,这将使我快速前进。就其解决方案/项目概念而言,是否有任何 IDE 与 Visual Studio(因为过去 7 年我大部分时间都花在 Visual Studio 上)非常相似?还有其他工具、技巧、建议和/或资源可以帮助您快速进行实验吗?

我想避免很多介绍性的内容,而是进入诸如“如果您想创建 Mac 桌面应用程序,您可以使用 集成开发环境 并像这样设置你的项目。”


我担心 Xcode 会是答案!:P 我尝试过使用它——实际上就是从 DVD 中取出它,然后就开始研究,不知道会发生什么(在我知道你使用 Objective C 作为语言之前)。我想,我是个聪明人,我可以摸索并让一个简单的应用程序运行起来......错误的。

@Andrew - 感谢您对这些配置设置的见解。根据我对 Xcode 的第一印象,我认为这些可能会有所帮助。

有帮助吗?

解决方案

我建议你选择一个有趣的小产品并投入其中。如果你正在寻找一本书,我建议 Max OSX 的 Cocoa 编程 这是对 Objective-C 和 Cocoa 的很好的介绍。

XCode 几乎是事实上的 IDE,并且在 OSX 上是免费的。它应该位于您的原始安装 DVD 上。它很好,但不如 Visual Studio(抱歉,真的不是)。

作为一个长期的 V​​S 用户,我发现默认的 XCode 配置有点奇怪并且难以调整,特别是为每个源文件打开一个新的浮动窗口的方式。我发现一些调整特别有用;

  • 设置/常规 -> 一体化(统一编辑器/调试器窗口)
  • 设置/常规 -> 在同一编辑器中打开对应项(单窗口编辑)
  • 设置/调试 - “编辑器调试器控件”
  • 设置/调试-“自动清除调试控制台”
  • 设置/按键绑定 - 大量与 VS 匹配的绑定(Ctrl+F5/Shift+F5、Shift+Home、Shift+End 等)

我发现调试器有一些恼人的问题,例如断点未正确映射到行,并且调试器不会立即捕获异常。没什么破坏性的,但有点麻烦。

我建议您使用 Objective-C 2.0 引入的新属性语法。它们大大减少了许多地方的打字次数。不过,它们仅限于 OSX 10.5(是的,语言功能与操作系统版本相关,这有点奇怪)。

另外,不要轻视 C/C++ 和 Objective-C 之间的差异。它们非常相关,但是是不同的语言。尝试启动 Objective-C,而不考虑如何在 C/C++ 中执行 X、Y、Z。这会让事情变得容易得多。

其他提示

第一个要阅读和消化的文档是 Mem 管理指南, ,在继续之前先了解这一点。 也是 Objective-C 的一个很好的指南。事实上,Apple 的开发者网站非常好 - 但您可能想先阅读 Hillegas 的书。

关于 Xcode 与 Visual Studio - 它们是不同的。我不会说其中一个比另一个更好 - Windows 开发人员来自 VS,并期望它是相同的。这只是一种傲慢的态度,请不要落入这群人的行列。从 AppStudio 时代起就使用 VS,现在使用 Xcode 已有一年左右的时间,两者都有优点和缺点。Xcode 是开箱即用的(尤其是来自 VS 时)看起来不太好,但是一旦你开始使用并理解它 - 它就会变得非常强大。

此外,Xcode 等还包含更多工具,例如 Instruments 和 Shark,除非您打开钱包,否则您根本无法通过 VS 获得这些工具,而且即使如此,恕我直言,它们也不是那么好。

无论如何,祝你好运。我仍然喜欢 C#,但 Objective-C/Cocoa 在某种程度上让编程再次变得有趣,一旦你开始接触它......

不用费心去翻你的 OSX DVD,因为从那时起他们已经发布了 XCode 的新版本 (3.1)。

首先,您需要加入 苹果开发者连接 (它是免费的,您需要它来访问他们的 MSDN 版本) - 它使用您的 Apple ID,因此如果您曾经在 iTunes 商店等中拥有过一个 ID,则它是相同的用户名/密码

完成后,单击“下载”,然后单击“开发人员工具”以查看 这一页, ,然后去寻找 XCode 3.1 开发者 DVD

另一项建议:如果您有功能或增强请求,或者遇到错误,请务必向 Apple 提交 错误报告者. 。这是开发人员向 Apple 传达需求的最佳方式,因为每个问题都可以通过系统进行跟踪。

您可以尝试以下演示 文本伙伴 看看您是否喜欢它与 Objective-C 或任何其他类型的文本一起工作。它将导入 xcode 项目设置,以便您仍然可以从 textmate 编译和运行,而不必返回 xcode。

Xcode 是编辑源文件的标准,但如果您确实需要,可以将另一个编辑器与命令行 xcodebuild 工具结合使用。在最终屈服于 Xcode 之前,我使用 Vim 进行所有 Cocoa 编辑。它不是世界上最好的 IDE,但它可以完成工作,并且最近的 3.x 版本有了一些不错的改进。

Cocoa 开发真正强大的工具是 Interface Builder。IB 不像许多 UI 工具那样生成源代码。相反,它操作真正的 Cocoa 视图、控件和对象,然后将它们捆绑到一个存档 (nib) 中,该存档由程序在运行时加载。大多数 Cocoa 程序至少使用一个 nib 文件,并且通常使用更多。

无论您选择哪种 IDE/编辑器组合来破解源文件,我都建议您尽可能使用 IB。即使您不喜欢其他 UI 布局/生成工具,我建议您保持开放的态度,给“Cocoa 方式”一个机会,至少了解 Interface Builder 可以为您的开发过程做些什么。

AFAIK,几乎每个 OS X 开发人员都使用 Xcode。

那就是用于创建 GUI 的 Interface Builder。

FWIW,尝试获取 Hillegas 的书的副本,因为它是一个很好的入门教程,而 Apple 提供的参考文档确实不是。(不过,它们通常是非常好的参考文档)。

可可很大。学习如何在 Mac 上编写应用程序最困难的部分是学习 Cocoa。顺便一提。您不需要了解 ObjC(尽管它有很多帮助)。您可以使用 Python 或 Ruby(就在 IDE 中)编写 Cocoa 应用程序。

我同意 VS 是比 Xcode 更好的 IDE。但如果你加上 Interface Builder 和所有其他工具,我就不太确定了。Mac 开发并不是用 1 个巨型 IDE 来解决所有问题。但 VS 对开发人员来说比 Xcode 更“友善”。

另外,如果您想做跨平台应用程序,请查看 真实基础. 。一个很好的工具(虽然是基本的。但它也可以在 Linux 上运行。)您会惊讶地发现有多少 Mac 应用程序是用 RB 编写的。

我听说目前市面上的书已经过时了。整个生态系统似乎发展得非常快,每个操作系统版本都发生了巨大的变化。

他写了一个 教程 其中汇集了一些 Apple 文档和其他教程,可以帮助您入门。我认为它涵盖了使用 IDE、编写简单应用程序的基础知识,然后继续介绍更高级的内容。

过去几年我一直在涉足 Cocoa,最近又学习了 Fritz Anderson 的“Xcode 3 释放” 强烈推荐进入 Xcode — 尤其是 3.0/Leopard 带来的一些重大变化。

不要忘记 Hillegass 事实上的 Cocoa 圣经,“Mac OS X 的 Cocoa 编程 - 第三版”。

@peter我不知道为什么你在让一个简单的应用程序正常工作时遇到麻烦,而无需做任何事情,你的应用程序从Cocoa框架中获得了很多好处。如果你的意思是你正在尝试做一些事情,例如将按钮连接到操作并让它在屏幕上打印警报或类似的事情,那么是的,我可以看到你会遇到困难。

对我来说,多年前开始使用 Cocoa 的问题是,它与其他任何东西都有很大的不同,以至于它有一点学习曲线。而许多其他系统都是面向编译时的,Cocoa 是非常动态的并且面向运行时的。一旦您了解了操作如何与类挂钩,接下来就需要了解 Cocoa 框架如何工作了。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top