Swift 5-创建大量基于参考的应用程序。-数据结构

Swift 5-创建大量基于参考的应用程序。-数据结构,swift,core-data,data-structures,icloud,Swift,Core Data,Data Structures,Icloud,我正在努力创建一个基于大量数据的应用程序。-我有成百上千的资料组成了这个应用的主干。我不确定我应该如何构造数据我过去使用过realm,但我想使用核心数据,这样我就可以使用iCloud了 目前,我将这些材质作为结构。这个结构大约有30个常量。基本上 变量,但也有一些数组和枚举 目前,我还为每种材质创建了一个文件,并且该材质被设置为全局常量 然后,我创建了第二个结构,将所有材质与其他变量组合在一起。然后是用于引用数据的全局变量 结构(材料类型): 作为全局常量的材质对象示例: let myMater

我正在努力创建一个基于大量数据的应用程序。-我有成百上千的资料组成了这个应用的主干。我不确定我应该如何构造数据我过去使用过realm,但我想使用核心数据,这样我就可以使用iCloud了

目前,我将这些材质作为结构。这个结构大约有30个常量。基本上 变量,但也有一些数组和枚举

目前,我还为每种材质创建了一个文件,并且该材质被设置为全局常量

然后,我创建了第二个结构,将所有材质与其他变量组合在一起。然后是用于引用数据的全局变量

结构(材料类型):

作为全局常量的材质对象示例:

let myMaterial = Material(
        
    id: "myMaterial1",
    
    materialName: "myMaterial",
    brandName: "myMaterial 1",
    alternativeNames: ["myMaterial 1", "myFirstMaterial", "etc"],
用于将材质与其他值组合的结构: 结构材料学家{

    let material: Material
    var isFavorite = false
}
组合结构使用的全局变量示例:

var combinedMaterialList = [


MaterialList(material: myMaterial1, isFavorite: false),
MaterialList(material: myMaterial2, isFavorite: false),
...etc
]
我的问题不是如何使用核心数据,而是这是我设置数据的方式吗?使用全局常量/变量可以吗?还是我应该做些其他事情?

具体地说,几周前我在看SwiftUI,在他们的一个教程中,Apple将他们的模型设置为可编码的,并使用JSON提供数据。在将isFavorite变量包装到另一个模型中之前。类似于我组合结构的方式


该教程中的技术是实现这一点的一种方法,但它不能很好地处理核心数据。对于核心数据,您需要的模型对象是
NSManagedObject
的实例或
NSManagedObject
的子类。您仍然可以使用
Codable
,但必须使用
NSManagedObject
。嘿,汤姆,您知道吗关于这个问题,我在任何地方都能读到。我不太确定要搜索什么来查找信息。@TomHarrington我应该将数据预加载到核心数据中吗?苹果提供。是否预加载数据取决于应用程序。如果有人第一次使用应用程序时需要已经存在一些数据,预加载可能是一个好主意。在应用程序第一次运行时从服务器下载也很好。@TomHarrington谢谢!我将进一步研究。该教程中的技术是实现这一点的一种方法,但它不能很好地处理核心数据。对于核心数据,您需要的模型对象是
NSManagedObject
的实例或
NSManage的子类dObject
。你仍然可以使用
Codable
,但你必须使用
NSManagedObject
。嘿,汤姆,你知道我可以在哪里读到关于这个问题的更多信息吗?我不太确定要搜索什么来查找信息。@TomHarrington我应该将数据预加载到核心数据中吗?苹果提供。是否预加载数据取决于应用程序。如果有人第一次使用应用程序时需要已经存在某些数据,则预加载可能是一个好主意。在应用程序第一次运行时从服务器下载数据也可能很好。@TomHarrington谢谢!我将进一步研究它。
var combinedMaterialList = [


MaterialList(material: myMaterial1, isFavorite: false),
MaterialList(material: myMaterial2, isFavorite: false),
...etc
]