如何正确MVC CoreData& NSDefaults

时间:2015-07-07 08:19:47

标签: swift core-data model-view-controller nsuserdefaults

我有一个名为DataModel.swift的swift文件,用于存储结构。

我的viewController.swift从DataModel.swift初始化一个struct类型的变量。使用该变量,我可以使用DataModel.swift获取值,计算并返回ViewController.swift

到目前为止一切正常。但每次viewController.swift初始化struct时它也会重置struct。我希望这个结构数据是持久的,所以当用户回来时结果仍然存在。

解决这个问题的最佳方法是什么?

使用核心数据? 使用NSUserDefaults?

我知道如何使用核心数据或NSUserDefaults在ViewController上存储/读取数据,但我担心如果我这样做,我将最终得到ViewController上的所有代码,这对我来说听起来不是MVC。

或者有没有办法存储,加载和计算保持代码在我的DataModel.swift文件中的值?

下面是一些代码示例。

ViewController.swift struct initialisation如下:

[0]

DataModel.swift文件如下:

var calculations = ConcreteModel(
    width: 0,
    length: 0,
    thickness: 0,
    pricePerCubicMetre: 0,
    unit: "metric")

1 个答案:

答案 0 :(得分:0)

你的想法是正确的。将您选择的持久性代码放入DataModel类。