2011-03-14 57 views
1

如何在目标C中创建可重用类?我该怎么办?我不该做什么?如何在目标C中创建可重用类?我该怎么办?我不该做什么?

请用一些代码解释。

我不想知道如何从苹果类创建子类。

我想知道如果我为一个项目编写自己的类,那么应该如何让这些类可以更好地用于其他项目。

那该怎么办? 我该怎么办?

或者在为第一个项目编写课程时应该考虑什么?

+0

Google透露了这一点:http://www.devbypractice.com/reusable-singleton-class-in-objective-c -for-iphone-and-ipad/ – Pripyat 2011-03-14 13:13:30

+0

@David:这只是一个Singleton类,可能是他想要的,但OP没有具体提及这种模式。 – FreeAsInBeer 2011-03-14 13:19:22

回答

6

要将Obj-C类添加到项目中,只需右键单击Classes文件夹并选择“添加” - >“新建文件”。选择'Objective-C Class'并确保'Subclass of'下拉菜单设置为'NSObject'。按'下一步',为您的班级命名并选中'Make .h file'复选框。现在你的项目中应该有一个.h和.m文件。您可以像使用视图控制器或视图一样使用这些方法。例如:

.h文件中:

@interface MyObject : NSObject { 
} 
-(void)myTestMethod:(NSString*)name 
@end 

.m文件:

@implementation MyObject 
-(void)myTestMethod:(NSString*)name { 
    NSLog(@"Hello, %@!", name); 
} 
@end 

然后使用这个对象,你会实例化它,像这样:

MyObject *myObj = [[MyObject alloc] init]; 

并使用像这样的方法:

[myObj myTestMethod:@"rithik"]; 

并释放它一旦你完成:

[myObj release]; 

编辑:我读过你的修改问题,现在我明白它是:“我怎么能写可重用的代码?“这在语言之间会非常相似。模式已经开发出来,可以在大多数语言中实现,最佳实践经常可以移植到另一个平台上。下面是一些个人建议:

  • 使用delegatesinterfaces
  • 使用唯一的类名不会与苹果或其他框架现有类冲突。
  • 使用private headers可防止他人访问他们不需要的方法。

这里有一些链接,应该帮助引导你在正确的方向:

+0

+1,但我会在New File对话框中为新的Objective-C类添加一个提到的“选择列表的子类” - 否则你可能会继承UITableViewCell而不是NSObject。 – MusiGenesis 2011-03-14 13:20:05

+0

@MusiGenesis:赶上!谢谢并修复。 – FreeAsInBeer 2011-03-14 13:31:49

+0

嘿,请再读一遍我的问题 – rithik 2011-03-14 13:48:04