2011-01-31 84 views
0

我是Mac OS应用程序开发新手。我对iPhone应用程序开发非常熟悉。但我很困惑在Mac应用程序中创建窗口,表格视图和其他东西。我看到一些使用IB教导这些东西的教程。但我想学习如何编程。需要针对Mac应用程序开发的Cocoa教程推荐

在iPhone中,我们可以创建视图控制器并将其添加到窗口或可添加到窗口的导航控制器。我需要知道如何在Mac中做类似的事情。任何人都可以建议/推荐一些初学者教程,教教程Mac开发应用程序..

不要怪我这个简单/非常基本/无论你认为最糟糕的这个问题。我一直在关于这个话题一直在搜索Google。我无法找到我需要的东西。我总是感谢你的帮助。

谢谢大家..

回答

1

IB没什么神奇的。除了以所见即所得的方式查看和编辑动态类型之外,它不会添加任何功能。它使用类接口的所有功能,以及一些可可内部(对于你来说足够可见 - 绑定和归档等)。

最大的运行时差异在于如何创建对象(例如NSViews)。与笔尖,你得到笔尖unarchiving,而不是[[MONView alloc] initWithFrame:r]

如果你已经习惯了语言/模式,你真的不需要太多的Wrt教程。通常,您只需查找具有相同名称的属性并在此处定义它。此外,您将实现自己的initWith方法,而不是NSCoder + awakeFromNib方法。一旦你了解IB如何将笔尖归档,这真的很简单。

所以...作为一个起点,我建议将功能性笔尖转换为功能性程序化实现。一路上,您必须查找一些方法来了解如何操作和构建NSView图表 - 如何将您在IB中知道的信息转换为源表示形式。

我真的不知道具体的资源,我的观点是它比你想象的要容易。当然,还有一些酒吧可以简短地演示这些 - 但我知道的酒吧很快就会在少数情况下演示它作为概念验证,然后使用IB继续教程。

我知道的最好的奇异资源是可可编程(痛苦/巴克/ Yacktman) - 也许这是过时或已被修改。我知道的最后一个rev是从2002年开始的。

最后,你可能会得到很多人告诉你它是多么可怕的想法是而不是使用IB。如果你想进行认真的开发,并且你已经理解IB,我认为这是一项很棒的技能,对我来说非常有用 - 特别是对于复杂的应用程序和大型代码库。对于简单的应用程序,它并不重要。我很少创建/使用笔尖 - 我只是在大多数情况下以编程方式实现它。我发现它更干净,更快,而且不那么多余。另外,我有大量的自定义实现并使用objC++,所以当你离主线很远时,IB并不是那么有用。

祝你好运!

+0

感谢您的建议。我知道使用IB。但是,作为一名学习者,我总是喜欢编码自己,以便更好地学习。 – EmptyStack 2011-01-31 06:02:34

相关问题