文档章节

iOS 数据管理 Core Data 简介

 橘子又红了
发布于 2014/05/05 11:15
字数 555
阅读 59
收藏 0

1. Core Data 简介

Core Data 是 针对 Cocoa Touch 程序的全功能数据模型框架,为基于iOS 开发提供了持久数据的解决方案,用于处理应用程序的数据模型需求。

2. Core Data 特性

  • 更改跟踪和撤销支持。Core Data 提供了内置地管理撤销和重置。

  • 关系维护。Core Data 管理数据地变化传播,包括维护对象之间地关系一致性。

  • 延迟操作。Core Data 支持数据地延时加载,减少内存负担

  • 模式迁移。Core Data 提供schema migration 工具可以简化应对数据库结构变化地任务,而且在某些情况下,允许执行高效率地数据库原地迁移工作。

  • 属性值的自动验证。Core Data 的数据对象扩展了标准的key-value 校验方法。

  • 通过与应用程序的控制层的可选集成来支持用户面的显示同步。

  • 完全自动化地支持 key-value 编码和 key-value 显示。

  • 能够支持在内存 和 UI 层 中分组,过滤 和组织数据。

  • 支持在外部数据库中进行对象存储。

  • 完美地读写处理。 NSPredicate 提供了对基本功能、相关子读取和其他高级SQL语言地支持,通过Core Data,开可以支持特定地 Unicode编码,本地化识别读取、排序和正确地表达式等功能。

  • 合并策略。Core Data内置了版本跟踪和开放式锁定来支持多用户写入冲突地解决。

3.Core Data 框架

  • Managed Object Model ,应用程序的数据模型,包含实体(Entity),特性(Property),读取请求(Fetch Request)等。

  • Managed Object Context,类似数据库的表结构,包括实体(Entity),实体又分为三种特性,分别为属性(Attribute),关系(Relationship)和读取属性(Fetched Property)。

  • Persistent Store Coordinator,相当于数据文件管理器,负责从数据文件(SQLite,xml等)中读取数据生产托管对象,或者保存托管对象写入到数据文件。

  • Managed Object,表示数据文件中的一条记录,每一个 Managed Object 对象在内存中对应Entity的 一个数据。

© 著作权归作者所有

共有 人打赏支持
粉丝 1
博文 8
码字总数 1332
作品 0
闵行
Core Data 学习笔记 常用链接整理

目录 Core Data 学习笔记(一)框架简介 Core Data 学习笔记(二)被管理对象模型 Core Data 学习笔记(三)被管理对象 Core Data 学习笔记 应用示例 Core Data 学习笔记 常用链接整理 文章 ...

灰大羊
2015/07/31
0
0
微软提供移植iPhone应用到Windows Phone 7上的工具

windows phone 7 iphone5 微软发布了一个API映射工具、指导手册和一组分享经验的视频,帮助简化移植iPhone/iOS应用程序到Windows Phone 7(WP 7)上的工作。 微软Windows Phone互操作组创建了...

junwong
2012/03/09
0
0
那些在学习iOS开发前就应该知道的事(part 2)

英文原文:Things I wish I had known before starting iOS development—Part 2 如果你还没读这篇文章的第一部分,请先读完了再来看第二部分。 那些在学习iOS开发前就应该知道的事(part 1)...

TomatosX
2015/06/12
0
0
2018 一份"有点难"的iOS面试题(5年iOS开发)

序言: 之前一时兴致在本站上出过一份iOS的中级面试题,引起一些关注,不少同学表示对”隐藏关卡“感兴趣。升级版iOS面试题来了,目测难倒90%iOS程序员,目测一大波程序员撸着袖子在靠近。 ...

原来是泽镜啊
05/26
0
0
GPU vs CPU in iOS

一直以来,我们做产品的时候并没有特别的去考虑CPU/GPU的使用,最近为了提升可视化功能的性能,发现合理使用GPU也是一个可以好好研究的部分,这里总结一下一些有用的信息。 中央处理器 CPU ...

雨_树
07/10
0
0

没有更多内容

加载失败,请刷新页面

加载更多

java JDK动态代理

本篇随笔是对java动态代理中的JDK代理方式的具体实现。 首先需要定义一个接口,为其定义了两个方法:   public interface UserService { public void add(); public void delete(); } 然后需...

编程SHA
8分钟前
0
0
轻松理解Dubbo分布式服务框架

Dubbo是什么? Dubbo是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案。简单的说,dubbo就是个服务框架,如果没有分布式的需求,其实是不需要用的...

别打我会飞
16分钟前
0
0
TypeScript基础入门之JSX(一)

转发 TypeScript基础入门之JSX(一) 介绍 JSX是一种可嵌入的类似XML的语法。 它旨在转换为有效的JavaScript,尽管该转换的语义是特定于实现的。 JSX在React框架中越来越受欢迎,但此后也看到了...

durban
40分钟前
0
0
JavaScript使用原型判断对象类型

1. constructor属性 在JavaScript创建对象(二)——构造函数模式中,我们说过可以使用对象的constructor属性判断对象的类型:p1.constructor === Person,可能当时就有细心的读者会想,我们...

Bob2100
42分钟前
1
0
10-《深度拆解JVM》JVM是怎么实现invokedynamic的?(下)

一、问题引入 上回讲到,为了让所有的动物都能参加赛马,Java 7 引入了 invokedynamic 机制,允许调用任意类的“赛跑”方法。不过,我们并没有讲解 invokedynamic,而是深入地探讨了它所依赖...

飞鱼说编程
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部