让我们谈谈核心数据

核心数据之前

时间是晚上08:17,您上班迟到了。 前一天晚上真的很疯狂,您忘了给手机充电一整夜,您几乎无法起床。 您在地铁上都感到筋疲力尽,并向老板写了这么长的文字,解释并恳求她不要解雇您。 在按下绿色的大“发送”按钮之前,手机就死了。 您甚至开始惊慌失措,但是在背包中发现了一个移动电源,因此您立即开始为手机充电。 当它启动时,您输入消息应用程序,您长而宝贵的消息就消失了。 您无需写新信息,而是跑到办公室去和已经开始打包您的东西的老板见面。 她说:“简单的文字可以避免这种情况。”

我知道,我的描述确实很长很奇怪,但是就像在持久性数据之前那样。 不用担心那边突出显示的单词,我有一个解释:

持久性:“将数据保存到一个位置,在重新启动设备或应用程序后可以重新访问和检索数据,这对于任何想要长期存储数据并保持对用户可用的应用程序都是必要的

我知道你在想什么 “这篇文章不是关于核心数据,不是关于持久性吗?”

没错,但是Core Data只是数据持久性选项的另一个常见选项。 最常见的四个是Default SystemProperty ListSQLiteCore Data

碰巧的是,Core Data现在正在主导其他所有选项。 但为什么?

为什么选择核心数据?

核心数据基本上是一个类似于UIKit的框架,但稍微复杂一些。 它用于管理模型或数据。 有一些内置功能将有所作为:

  • 1.筛选
  • 2.保存在磁盘上
  • 3.撤消并重做数据
  • 4.部分加载不同于UserDefaults
  • 5.更改数据跟踪

Okey,听起来不错。 但是什么是核心数据?

什么是核心数据?

核心数据是苹果公司专有的持久性数据存储系统。 从根本上来说,这是一个可以在Github上找到的框架,但是有点复杂。

核心数据也不是数据库。 如果您熟悉MySQL,您可能会知道关系数据库以行,表和列的形式存储数据。 因此,请勿将核心数据与数据库混淆。 尽管SQLite数据库是iPhone上Core Data的默认持久存储,但Core Data不是关系数据库。

仅使用Core Data时,您可以将应用程序中的对象映射到数据库中的表记录,而无需任何SQL。

我应该如何学习核心数据?

正如我们自己的亚里士多德曾经说过的:“ 对于我们在做之前必须学习的东西,我们通过做来学习 。”

这一切都是关于在现实生活中的项目中实现知识并做到这一点!

如果您想学习Core Data,我建议您构建一个ToDo-List应用。 它将教您有关核心数据的基础,例如属性关系。 之后,您可以开始进行更复杂的项目,例如一个梦list以求的应用程序(此处为Github源代码),它将教您有关核心数据中的关系的知识

Udacity是提供有关Core Data的出色教程的众多网站之一。

最后的评论

我还没有深入研究Core Data(但是!),但是我希望这可以成为所有开发人员的起点。 我还想指出,这是我的第一篇中级帖子,所以请轻描淡写!

目标

我今年有很多目标。 最重要的是要成为一个更好的开发人员,同时还要在Instagram上吸引500位关注者(下面的链接)。 但是写完这篇文章后,我想再增加一个目标,目标是每周写一篇中型文章。 因此,如果您开始关注我,那么每个星期一我都会在您的供稿中弹出。

马丁·诺德斯特伦

个人网站| Instagram的| 推特| Github

资料来源

https://classroom.udacity.com/courses/ud325/lessons/7708131740/concepts/78813219080923#

iOS从零开始,用Swift:iOS上的数据持久性和沙箱
从存储用户…,大多数iOS应用程序都需要在应用程序启动过程中保持持久数据 。code.tutsplus.com Udacity
编辑描述教室.udacity.com