【问题标题】:Developer Setup for Starting Out with Cocoa/Mac Programming从 Cocoa/Mac 编程开始的开发人员设置
【发布时间】:2010-09-06 03:39:41
【问题描述】:

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

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


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

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

【问题讨论】:

  • 是的我知道那种感觉.我发现我花了大约两周(可能是 10 小时)阅读 Cocoa Programming for OSX 并完成一些示例,然后我才真正“掌握”它并开始感到富有成效。从长远来看,良好的 C/C++ 背景肯定会有所帮助,但在早期,这几乎感觉像是一种障碍,因为事情感觉很熟悉但又错了:)

标签: cocoa macos


【解决方案1】:

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

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

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

【讨论】:

    【解决方案2】:

    我建议你选择一个有趣的小产品并深入研究。如果你正在寻找一本书,我建议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。这样会轻松很多。

    【讨论】:

      【解决方案3】:

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

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

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

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

      【讨论】:

        【解决方案4】:

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

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

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

        【讨论】:

          【解决方案5】:

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

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

          【讨论】:

            【解决方案6】:

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

            【讨论】:

              【解决方案7】:

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

              【讨论】:

                【解决方案8】:

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

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

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

                【讨论】:

                  【解决方案9】:

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

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

                  【讨论】:

                    【解决方案10】:

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

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

                    【讨论】:

                      【解决方案11】:

                      不要费心挖掘你的 OSX DVD,因为他们已经发布了 XCode 的新版本 (3.1)。

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

                      完成后,点击下载,然后点击开发者工具,查看this page,然后前往XCode 3.1 Developer DVD

                      【讨论】:

                        猜你喜欢
                        • 1970-01-01
                        • 2010-10-03
                        • 1970-01-01
                        • 2011-05-31
                        • 1970-01-01
                        • 1970-01-01
                        • 1970-01-01
                        • 1970-01-01
                        • 1970-01-01
                        相关资源
                        最近更新 更多