实现在大型项目中使用的所有函数的最简单方法是什么?

时间:2009-05-20 13:02:33

标签: iphone objective-c cocoa-touch

我想创建一组功能,让生活更轻松。我在大约60%的项目文件中使用它们。我想知道在项目中包含这些内容的最有效方法是什么。

我考虑创建一个文件,并将其包含在我需要的每个文件中。另一方面,如果我能在一个突出的位置只包含一次,那将是很酷的,因此整个项目都可以使用。但我不知道那是什么地方。我不确定,但我认为这是不可能的。或者我错了这个假设?

3 个答案:

答案 0 :(得分:6)

我认为您要求更多关于类设计以及如何构建API,而不是如何将定义包含在其他.m文件中。

如果是这种情况,大致有三种选择:

  • 向您的应用代表添加内容 - 这是存储系统范围功能的好地方,可以控制整体模型或应用本身。
  • 创建一个signleton类来保存你的方法。一个实际的单例或只有类方法的类(即使用前导+而不是-声明)
  • 通过在系统类中添加类别。

我认为,一般来说,您不希望对所有实用方法做出单一决策 - 您应该根据具体情况采取每种方法(或方法的基础)并做正确的事情。例如,如果您有一个显示自己的错误对话框样式的方法,则可以将其放在AppDelegate上。如果您有将字符串翻译成法语的方法,可以将其添加为NSString类别。

一般来说,类别在这里是你的朋友 - 它们可以封装在一个.h和.m中,这样它们很容易在项目中移动,但它们的可访问性遵循目标类。

如果不这样做,你应该考虑实现单例。请参阅Matt Gallager的discussion了解如何做到这一点。

最后,如果它确实是正确的决定,请扩展你的AppDelegate - 可能是一个类别; - )

答案 1 :(得分:3)

您在xcode项目中使用的prefix.pch文件用于添加项目的所有/几乎所有类中所需的所有import语句。

UIKit和Foundation导入都写在这个文件中。

所以只需将您的import语句添加到此文件即可。您可以在Groups&中的Other Sources文件夹中找到它。文件

答案 2 :(得分:1)

我认为您可以在ProjectName_Prefix.pch中包含标题。