25

我想开始尝试 Cocoa 和 Mac OSX 编程。在这一点上,我并不十分关心 Objective C 语法/构造/行为,但更好奇的是,在编辑器和/或 IDE 方面的有效设置会让我快速前进。就其解决方案/项目概念而言,是否有任何 IDE 甚至与 Visual Studio (因为这是我在过去 7 年中大部分时间都花在这个地方)很相似?任何其他工具、提示、建议和/或资源可以快速启动和试验?

我想避免很多介绍性的东西,而是进入诸如“如果你想创建一个 Mac 桌面应用程序,你可以使用Acme IDE并像这样设置你的项目”之类的东西。


我担心 Xcode 会成为答案!:PI 尝试过使用它——实际上只是将它从 DVD 中取出,然后潜入其中,不知道会发生什么(在我什至不知道您使用 Objective C 作为语言之前)。我想,我是个聪明人,我可以摸索一下,让一个简单的应用程序正常工作……错了。

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

4

11 回答 11

18

我建议您选择一个有趣的小产品并深入研究。如果您正在寻找一本书,我建议您使用Cocoa Programming for Max OSX,这是对 Objective-C 和 Cocoa 的一个很好的介绍。

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

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

  • Settings/General -> All-In-One(统一编辑器/调试器窗口)
  • 设置/常规 -> 在同一编辑器中打开对应项(单窗口编辑)
  • 设置/调试 - “在编辑器中调试器控件”
  • 设置/调试 - “自动清除调试控制台”
  • 设置/键绑定 - 与 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。它会让事情变得容易很多。

于 2008-08-19T04:30:35.897 回答
4

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

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

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

无论如何,祝你好运。我仍然喜欢 C#,但是一旦你进入 Objective-C/Cocoa,它就会以某种方式让编程再次变得有趣......

于 2008-08-19T04:56:07.750 回答
4

不要费心挖掘您的 OSX DVD,因为他们从那时起发布了 XCode 的新版本 (3.1)。

首先,您需要加入Apple Developer Connection(它是免费的,并且您需要它来访问他们的 MSDN 版本)——它使用您的 Apple ID,所以如果您曾经在 iTunes 商店等中拥有过 Apple ID,那么它就是同一个用户名/密码

完成后,单击下载,然后单击开发人员工具,查看此页面,然后获取XCode 3.1 开发人员 DVD

于 2008-09-02T03:25:03.907 回答
2

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

于 2008-08-19T05:40:52.497 回答
1

你可以试试textmate的演示,看看你喜欢它如何使用 Objective-c 或任何其他类型的文本。它将导入 xcode 项目设置,因此您仍然可以从 textmate 编译和运行,而不必返回 xcode。

于 2008-08-21T23:14:43.910 回答
1

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

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

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

于 2008-08-26T19:34:51.497 回答
0

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

那,以及用于创建 GUI 的 Interface Builder。

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

于 2008-08-19T04:27:06.980 回答
0

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

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

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

于 2008-08-19T05:06:43.127 回答
0

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

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

于 2008-08-19T05:38:36.900 回答
0

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

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

于 2008-08-30T21:46:01.073 回答
0

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

多年前我从 Cocoa 开始的问题是,它与其他任何东西都如此不同,以至于它有一点学习曲线。而许多其他系统是面向编译时的 Cocoa 是非常动态和面向运行时的。一旦你不再学习动作如何与类挂钩,它就变成了学习 Cocoa 框架如何工作的问题。

于 2008-09-01T14:18:09.587 回答