具有高质量代码的开源Objective-C项目?

具有高质量代码的开源Objective-C项目?,objective-c,cocoa,Objective C,Cocoa,我认为学习一门新编程语言的最好方法之一就是深入研究源代码,看看有经验的程序员是如何编写的。我在其他语言的堆栈溢出上发现了这种问题,但没有一个是针对Objective-C的。我发现的最接近的问题是,但我考虑的是一般的代码质量,比如良好使用习惯用法和设计模式,以及可用的文档。另一个很好的特性是代码库足够大,需要真正的组织纪律,但足够小,初学者可以随意使用 你认为什么是符合这些标准的高质量开源项目?我认为没有任何一个地方可以学习所有Objective-C习惯用法和最佳实践,但你可以在这里和那里学习它们

我认为学习一门新编程语言的最好方法之一就是深入研究源代码,看看有经验的程序员是如何编写的。我在其他语言的堆栈溢出上发现了这种问题,但没有一个是针对Objective-C的。我发现的最接近的问题是,但我考虑的是一般的代码质量,比如良好使用习惯用法和设计模式,以及可用的文档。另一个很好的特性是代码库足够大,需要真正的组织纪律,但足够小,初学者可以随意使用


你认为什么是符合这些标准的高质量开源项目?

我认为没有任何一个地方可以学习所有Objective-C习惯用法和最佳实践,但你可以在这里和那里学习它们并进行实践。Cocoa邮件列表和博客是很好的资源。(有几个问题与此相关。)

我自己还没有深入到源代码中,但是这些代码在Mac社区中很受尊重

我在一个边缘仍然粗糙的文档上工作,但是除了可以理解的、结构良好的代码之外,我还努力获得高质量的文档。下载右上角“获取源代码”下的链接


它很小,但它展示了良好的组织规则(单独的控制器对象,而不是塞进AppDelegate中的所有对象)、一个简单的模型层和一个模型类(标题),以及正确使用Cocoa绑定。

谷歌快速搜索框[]


我认为谷歌快速搜索框(QSB)值得一看。依我看,这几乎是谷歌对Quicksilver的更干净的重写(注:QS程序员N.Jitkoff也参与了谷歌QSB)。

苹果的开发者网站上有大量可下载的示例。您可以看到源代码,并且许可证是我记忆中的BSDish(使用它做任何事情,但不要在没有许可证的情况下重新发布原始代码)


我曾经处理过GNUstep源代码,它们具有良好的一致性编码风格,并且代码组织良好。当然,这个项目并不小,但是如果你知道大多数类在你的Cocoa项目中使用它们时都做些什么,那么很容易放大你感兴趣的部分。一些GNUstep应用程序项目或Éoilé应用程序也可能是一个很好的起点。

我发现这是一个精心设计和编写的Objective-C项目。它也有一个庞大的代码库。

CocoaDev上有一个不错的开源Mac项目列表:

并不是所有的项目都还在进行中,但有相当数量的项目仍在进行中。我特别建议:

  • BWToolkit-
  • BGHUDAppKit-
  • 数据结构-
  • MGTwitterEngine-
  • 闪光-
  • 座谈会
  • 椰浆
  • 核心图-
签出,一个用于iPad应用程序的视图控件。

,显示了对10.4-10.7战略的支持,条理清晰、目标明确,评论深刻。使用ImageKit的固有问题已经被大胆地处理和解决


我渴望这一层次的思想与实践相结合。

在这里查看大量的开源项目


开发者工具附带的示例应用程序也是开始学习的好地方。我仔细阅读了这里的许多建议,发现这与我想要的最接近,因此我开始研究Adium的源代码。正如你所说,它有一个很大的代码库,但幸运的是,一次浏览一个片段并不是太令人畏惧。我是iOS新手,渴望使用你出色的PSTreeGraph控件,但很难开始,也许有教程吗?WWDC 2010年第141期“定制可可视图”详细介绍了OSX上的原始实现。被认为是桌面平台的一个不平凡的例子。我想看看这些想法和方法在IOS上的表现。你说得对,它需要一个教程。