历史上最简单,最奇怪的CoreData简介

CoreData! 是! 没有! 等等…什么? 来自很多地方的很多意见。 什至是什么? iOS中的一些“数据库”东西,可以让您的应用存储东西,对吗? 但是,请等待,不要更改数据模型,否则必须进行迁移。

??

让我清楚一点:如果您没有从正确的地方学习,CoreData可能会使在线学习感到困惑。 这篇文章将像您从未见过的那样介绍CoreData:它是如此简单,以至于我的非编程性(但还真是太棒了)的妻子理解了它。


每当您开始使用CoreData时,都需要习惯一些术语和想法。 停。 请允许我为您提供更多乐趣,让它看起来不那么奇怪。

假设您是老板(是的!),您有几个员工。 这是特别忙碌的一天,但是突然有人突然冲进您的办公室,完全没有考虑到您只是在听泰勒·斯威夫特(Taylor Swift)的声音而现在却疯狂地试图隐藏它。 “达娜·斯库利(Dana Skully)刚把咖啡倒在我的全新Mac上!”,她在你的脸上吼叫着,以至于你实际上可以品尝到二手咖啡。

冻结。

眼前的不公正情绪激起了你的情绪。 我的意思是,咖啡从这个女人的脸上滴下来。 那个美丽的苹果电脑全都被破坏和浸泡。 你呢

a)当场射击达娜(最令人高兴)
c)思考(大多数甘道夫)

令人震惊的事实是你还不能决定。 您需要一些上下文。

如果您要成为一名好经理,并且我们知道您想成为一名好经理 (您解雇了她,不是吗?),那么您需要了解有关情况的具体情况。 您需要有人回忆起发生了什么情况,以及在什么情况下是一名好经理的描述 (如果您解雇了她,只需责怪侠盗猎车手给您冲动的愤怒,所有的孩子都会这么做)。

我要去哪里?

CoreData的工作原理与普通数据库略有不同,并且是一个很好的方法,但是考虑它的最佳方法是使用您创建的某种数据模型(足够简单,也许是新关系的颜色)。 但是,它将这些“联系”存储在上下文中,即托管上下文中 。 我对这种情况的看法是,其中的所有内容都有描述 ,例如涉及Dana Skully的不幸事件,我们稍后会再讲。 实际上,我们数据模型中的这些联系实际上是在您的应用程序中带有描述的,因此所有内容都可以正确存储。

最后一件事是,我忘了提到您是一家销售新Mac的商店的经理,所以每个人都还不错(您后悔解雇Dana)。 CoreData中的所有操作都是通过store完成的,好在这里存储您创建的内容。 应用程序关闭后,他们正等着您,从数据模型中加载,传递到商店并传递到可使用的托管对象上下文中


如果您不感到困惑,那么恭喜您,您现在已经了解到有关CoreData的有用信息。 实际上,这就是我设法记住它的方式。 我做了一个故事。 不要相信那些“仅仅记住”事情的人,总是最好使用一个荒谬的故事,这是所有最优秀的人做事的方式。

那么最后,我们的Dana Skully发生了什么? 好吧,您奇怪地意识到:“达娜(Dana)已经走了……10…年”(乔伊·特里比安尼(Joey Tribianni)对于未成年人的参考)。

幽灵般的。

至少CoreData不会像这样开坏玩笑。