objective-c - NSURLConnections 属于我的模型还是 Controller ?

标签 objective-c ios xcode cocoa-touch cocoa

假设我正在使用 JSONXML API 从使用异步 NSURLConnection 的 URL 获取有关我的项目的数据,并将其解析为 NSMutableArray 然后填充一个 NSTableView

我有一个模型:项目 我有一个 Controller :TableViewController(充当表数据源和委托(delegate))

我应该将启动请求并将结果解析为 NSMutableArray 的代码放在哪里。

我应该:

1:

Project 中的一个方法称为 -(NSMutableArray* ) getAllProjects 并从我的 Controller 中调用它。

或2:

我是否应该枚举 Project* 对象的 NSMutableArray,例如在我的 Controller 中调用 ProjectsArray*;每次调用 [[Project alloc] init]?

选项 1 对我来说更有意义,因为我可能想从多个 Controller 获取所有项目,这将节省重复代码,我只需要在我的项目模型中调用一个公共(public)方法。在这种情况下,我会做很多 [[self alloc] init] 语句吗?这个可以吗?此外,我的模型需要是一个 NSURLConnection 委托(delegate)。这是正确的吗?

最佳答案

毫无疑问,它一定在您的模型中。

原因:

因为您将需要从不同的 Controller 多次更新它,所以您可以在将来使用 KVO。

关于objective-c - NSURLConnections 属于我的模型还是 Controller ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13249728/

相关文章:

ios - App购买中的自动续订订阅

objective-c - Objective-C FontAwesome

ios - 从 URL 中提取新数据后,SwiftUI View 不会立即重新加载

iphone - xcode将目标从“iOS设备”更改为模拟器

ios - ARC 不允许将非 Objective-C 指针类型 'int *' 隐式转换为 'Bird *'

iphone - 如何使用滑动手势 XCode 交换 View

iphone - 在 iPhone App 中分配 NSInteger 属性

ios - 如何在异步获取 JSON 数据以填充到 UITableView 时显示 UIActivityIndi​​catorView?

ios - 如何子类化自定义 UITableViewCell?

xcode - 有什么方法可以阻止 XCode 在我键入代码时显示错误和提示吗?