2008-08-19 145 views
25

我想开始尝试使用Cocoa并为Mac OSX编程。在这一点上,我并不十分关心Objective C的语法/构造/ bheaviors,但是对编辑器和/或IDE方面的高效设置会更加好奇,这会让我快速进入。在解决方案/项目概念方面,是否有任何IDE甚至与Visual Studio远程类似(因为这是我在过去7年中花费了大部分时间的地方)?任何其他工具,技巧,建议和/或资源可以快速起步和尝试?开始于可可/ Mac编程的开发人员设置

我想避免很多介绍性内容,并进入诸如“如果您想创建Mac桌面应用程序,您可以使用 Acme IDE并设置您的项目。”


我害怕Xcode会成为答案! :P我尝试过玩这个游戏 - 简直就是把它从DVD中拿出来,只是潜入不知道会发生什么(在我甚至知道你使用Objective C作为语言之前)。我想,我是那种聪明的人,我可以摸索一下,并得到一个简单的应用程序工作......错了。

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

+0

是的,我知道那种感觉:)如果它的任何安慰听起来就像我们有非常相似的经历(VS中7年以上的C/C++),并且我的第一次XCode/Cocoa体验完全相同。我发现花了大约两周(也许是10个小时)阅读Cocoa Programming for OSX,并在通过一些样本进行工作,然后才真正“获得”它并开始感到高效。一个好的C/C++背景对于长期来说肯定会有所帮助,但是在早期它几乎感觉像是一种障碍,因为事物会让人感觉熟悉而错误:) – 2008-08-19 04:51:44

回答

18

我建议你挑一个有趣的小产品,并潜入。如果你正在寻找一本书,我建议Cocoa Programming for Max OSX这是一个非常好的介绍Objective-C和可可。

XCode几乎是事实上的IDE,并免费使用OSX。它应该在您的原始安装DVD上。这很好,但不如Visual Studio(对不起,实际上不是)。

作为一个长期的VS用户,我发现默认的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。它会使它更容易。

0

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

那和Interface Builder用于创建GUI。

FWIW,试着找到Hillegas的书的副本,因为它是一个很好的介绍性教程,Apple提供的参考文档实际上不是。 (不过,它们通常都是很好的参考文档)。

4

第一个要阅读和摘要的文档是the Mem management guide,在继续之前了解这一点。 This也是Objective-C的很好的指南。事实上,苹果公司的开发者网站非常好 - 但你可能会首先阅读Hillegas书。

关于Xcode vs Visual Studio - 它们是不同的。我不会说其中一个比另一个更好--Windows开发者从VS中过来并期望它是相同的。这只是一种傲慢的态度,请不要落入这群人。自AppStudio开始使用VS和Xcode一年左右后,现在都有优势和劣势。 Xcode是开箱即用的东西(特别是来自VS)看起来不太好,但一旦你开始使用和理解它 - 它变得非常强大。

此外,还有很多更多的工具包含在Xcode等中,例如Instruments和Shark,除非你打开钱包,否则恕我直言,你根本用VS无法获得。

无论如何,祝你好运。我仍然喜欢C#,但Objective-C/Cocoa莫名其妙地让编程变得有趣一旦你进入它...

0

可可是巨大的。学习如何在Mac上编写应用程序最困难的部分是学习Cocoa。顺便一提。你不需要知道ObjC(虽然它有助于吨)。你可以用Python或Ruby编写Cocoa应用程序(在IDE中)。

我同意VS是一个更好的IDE,然后Xcode。但是如果你投入界面生成器和所有其他工具,我不太确定。 Mac开发并不是每个事物都有1个巨大的IDE。但VS对开发者来说是“亲切”,然后是Xcode。

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

0

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

他写了一个tutorial,它将一些Apple文档和其他教程组合在一起,这些教程将帮助您开始。我认为它涵盖了使用IDE的基础知识,编写简单的应用程序,然后继续更先进的东西。

2

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

1

你可以试试textmate的演示,看看你是如何喜欢它与真正的objective-c或任何其他类型的文本。它将导入xcode项目设置,以便您仍然可以编译并从textmate运行,而不必返回到xcode。

1

Xcode是编辑源文件的标准,但如果您真的想要,可以将其他编辑器与命令行xcodebuild工具一起使用。在最终让步到Xcode之前,我使用Vim进行了所有可可编辑。它不是世界上最伟大的IDE,但它完成了工作,最近的3.x版本已经有了一些不错的改进。

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

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

0

我在过去的几年里一直在可可公司工作,最近又找到了Fritz Anderson的“Xcode 3 Unleashed”。强烈推荐进入Xcode —,特别是3.0/Leopard带来的一些重大变化。

别忘了Hillegass的事实上的可可圣经,“可可编程为Mac OS X - 第三版。”

0

@peter我不知道为什么你有一个简单的应用程序工作的麻烦,马上就没有做任何事情你的应用程序从Cocoa框架中获得很多好处。如果你的意思是你试图做一些事情,比如把一个按钮连接到一个动作,并让它在屏幕上打印一个提示或类似的东西,那么是的,我可以看到你的操作很困难。

多年前我从可可开始就存在的问题是,它与其他任何东西都有很大不同,它有一点学习曲线。尽管许多其他系统是面向编译时间的,但Cocoa非常动态且面向运行时。一旦你了解了如何将行为与类连接起来,它就成为学习Cocoa框架如何工作的问题。

4

不要打扰挖掘你的OSX DVD,因为他们从那以后发布了新版本(3.1)的XCode。

首先,你会想加入Apple Developer Connection(它是免费的,你需要它来访问他们的MSDN版本) - 它使用你的Apple ID,所以如果你曾经有iTunes的存储等,那就是相同的用户名/密码

一旦你做到了这一点,点击下载,然后点击开发者工具,可以查看this page,并去为XCode 3.1 Developer DVD

相关问题