开发人员设置,可从Cocoa / Mac编程开始

时间:2020-03-05 18:40:37  来源:igfitidea点击:

我想开始尝试可可和Mac OSX编程。在这一点上,我并不十分担心Objective C的语法/构造/行为,但是对于在编辑器和/或者IDE上的高效设置(这将使我快速入门)更加好奇。就解决方案/项目概念而言,是否有任何IDE甚至与Visual Studio极为相似(因为这是我过去7年的大部分时间都在此工作的地方)?还有其他工具,技巧,建议和/或者资源可以快速起步并进行实验吗?

我想避免很多介绍性内容,而涉及诸如"如果要创建Mac桌面应用程序,则可以使用Acme IDE并按如下方式设置项目"。

我担心Xcode会成为答案! :P我试过了-从字面上看只是从DVD中取出它而只是不知道会发生什么(在我甚至不知道我们使用Objective C作为语言之前)就开始尝试。我想,我是一个聪明的家伙,我可以摸索一下,让一个简单的应用程序正常工作...错误。

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

解决方案

回答

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

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

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

回答

我建议我们选择一个有趣的小产品并开始学习。如果我们正在寻找一本书,我建议我们为Max OSX编写Cocoa编程,这是对Objective-C和Cocoa的很好的介绍。

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

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

  • 设置/常规->多合一(统一编辑器/调试器窗口)
  • 设置/常规->在同一编辑器中打开副本(单窗口编辑)
  • 设置/调试-"在编辑器中的调试器控件"
  • 设置/调试-"自动清除调试控制台"
  • 设置/键绑定-大量绑定以匹配VS(Ctrl + F5 / Shift + F5,Shift + Home,Shift + End等)

我发现调试器存在一些烦人的问题,例如断点无法正确映射到行,并且调试器不会立即捕获异常。没什么大不了的,但是有点麻烦。

我建议我们使用为Objective-C 2.0引入的新属性语法。他们在许多地方减少了打字的麻烦。尽管它们仅限于OSX 10.5(是的,语言功能与OS版本相关,这有点奇怪)。

同样不要低估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来获得它们,除非我们打开钱包,否则IMHO也不如以前。

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

回答

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

我同意VS是比Xcode更好的IDE。但是,如果我们使用Interface Builder和所有其他工具,我不确定。 Mac的开发并不能解决所有问题。但是VS对开发人员来说是"同类型的",然后Xcode就可以了。

另外,如果要跨平台应用程序,请查看RealBasic。一个很好的工具(虽然基本,但是它也可以在Linux上运行。)我们会惊讶地发现用RB编写了许多Mac应用。

回答

我听说目前那里的书已经过时了。在每个OS版本中都进行了巨大的更改,整个生态系统似乎发展很快。

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

回答

另一建议:如果我们对功能或者增强功能有要求,或者遇到了错误,请务必将其提交给Apple的Bug Reporter。这是开发人员与Apple交流其需求的最佳方式,因为每个问题都通过系统进行跟踪。

回答

我们可以尝试使用textmate的演示,并了解我们对使用Objective-C或者其他任何类型的文本的实际感觉如何。它将导入xcode项目设置,因此我们仍然可以从textmate编译并运行,而不必回到xcode。

回答

Xcode是编辑源文件的标准,尽管我们可以根据需要将其他编辑器与命令行xcodebuild工具结合使用。在最终放弃Xcode之前,我使用Vim进行了所有可可编辑。它不是世界上最强大的IDE,但是可以完成工作,并且最近的3.x版本进行了一些不错的改进。

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

无论选择哪种IDE /编辑器组合对源文件进行黑客攻击,我都建议尽可能使用IB。即使我们不喜欢其他UI布局/生成工具,我也建议我们保持开放的态度,给"可可方式"一个机会,并至少了解Interface Builder在开发过程中可以做什么。

回答

在过去的两年中,我一直在涉足可可,最近又选择了弗里茨·安德森(Fritz Anderson)的" Xcode 3 Unleashed"。强烈建议我们进入Xcode,尤其是3.0 / Leopard带来的一些重大更改。

不要忘记Hillegass的实际可可圣经," Mac OS X第三版的可可编程"。

回答

@peter我不知道我们为什么不花点时间立即完成一个简单的应用程序就会遇到麻烦,而应用程序却从Cocoa框架中获得了很多好处。如果我们是说要尝试将某个按钮连接到某个动作,然后让它在屏幕上显示警报,或者类似的事情,那是的,我可以看到困难之处。

对我来说,许多年前从可可开始的问题是,它与其他任何事物都是如此不同,以至于它有点学习上的困难。尽管许多其他系统都是面向时间的编译,但是Cocoa是非常动态的并且面向运行时。一旦我们了解了如何将动作连接到类上,就变成了学习可可框架如何工作的问题。

回答

自从OSX DVD之后发布了新版本的XCode(3.1)以来,我们就不必再去研究它了。

首先,我们需要加入Apple Developer Connection(它是免费的,并且需要它来访问其MSDN版本),它使用Apple ID,因此,如果我们曾经在iTunes商店等使用过ID,则使用相同的用户名/密码

完成此操作后,单击下载,然后单击开发人员工具,以查看此页面,并获得XCode 3.1 Developer DVD。