代码之家  ›  专栏  ›  技术社区  ›  Omer Tekbiyik user11084389

当我们使用CoreData,UserDefaults,Keychain[duplicate]

  •  0
  • Omer Tekbiyik user11084389  · 技术社区  · 7 年前

    2 回复  |  直到 7 年前
        1
  •  6
  •   mfaani    7 年前

    不是所有的,但简而言之

    • Userdefaults:用于保存设置数据。它不用于viewControllers之间的临时数据。它是最快的,因为它是plist文件或字典,当谈到应用程序的运行状态

    • CoreData:是一个用于大数据存储的关系数据库,从简单的UI自动创建模型,它是基于sqlite的

    • Keychain:是最安全的,通常用于令牌、密码等敏感数据,但它也是最慢的,因为它是一个c-wrapper。
        2
  •  1
  •   mfaani    7 年前

    NSCoding/NSKeyed​Archiver vs. Core Data 不会直接回答你的问题。但这很有帮助。长话短说:核心数据让人头痛,但 .

    钥匙链更像一个保险库。您可以在其中存储有限的小信息,例如密码。你不会把整个数据库都存储在里面。它就像一个看门人“这个用户能打开应用程序吗?对?好吧,让我们打开数据库,显示核心数据条目……”