我正在使用 Core Data,但我不确定实际保存/获取数据的位置。这是一个小例子:
我有一个 ViewController 类,我想在其中从 NSManagedObject 人员获取数据并将其显示在标签中。现在我应该继续在 ViewController 中创建一个函数来获取/保存数据吗?问题是,如果我有很多需要相同数据的 ViewController,我将不得不将该函数复制到每个 ViewController 中。
我应该在我的 person 类中调用一个继承自 NSManagedObject 的函数并返回我要查找的内容吗?
是否最好创建一个不继承自 NSManagedObject 并返回我正在寻找的内容的类?
那么正确的做法是什么?
最佳答案
正确的方法是应用MVC 设计模式。
- M:对于您应该完成所有模型(数据)工作的模型
- V:for view ,通常在 Storyboard中完成..
- C: Controller ,将充当两者之间的中间人,帮助为正确的模型显示正确的 View ,并根据 View 的变化更改模型。
在您的情况下,您应该将属于模型的所有获取作业与 ViewController 分开,并在通常称为“Manager”或“”的单独类中执行服务”。
在那里,您将获取所有数据,对其进行处理,然后将其作为输入传递给 viewController,以便 viewController 将其显示在 UI 中。
像这样,您在管理器中所做的一切都将可重用,您的代码将更有条理,您将应用标准帮助任何其他开发人员轻松理解您的代码,这样维护它的成本就会降低。
关于Swift 2 - 核心数据 - 面向对象编程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33503353/