我有一个XML解析器,它将解析17个不同的XML文档(我简化了这一点)。 当解析器完成其作业时,它会调用执行请求的对象。调用委托的数据提供者:细节还是泛型?
首先方式
,看起来像
- (void)didReceiveObject:(NSObject *)object ofType:(MyObjectType)type
与MyObjectType是枚举的单一方法。
在这种方法中,我检查类型并将对象重定向到相应的方法。
方式二
没有为每个所述17种对象的可以接收的回调方法。
- (void)didReceiveFoo:(MYFoo *)foo
- (void)didReceiveBar:(MYBar *)bar
... and so on
哪种使用代表的方式会更好? 我们和一位同事讨论过这个问题,并且找不到比另一个更有吸引力的方法。它似乎只是决定从解析器或委托内部调用什么方法......
即使在考虑添加未来方法/委托回调时,我们也没有看到任何实际问题。
其中一种方式比其他方式更好吗?有另一种方法吗?
我真的很喜欢你的想法。对不起,我没有说明我们必须坚持使用iOS3。我会再次检查,我们只能去iOS4 +,但上次是没有。 – teriiehina