文档章节

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开发资源汇总

学习过程当中查找到的资料,做一个记录,以便更多朋友查看。 开发的过程有时候是简单的,因为我们可以站在巨人的肩上,跳得更高,走得更远。 如何用Facebook graphic api上传视频: http://d...

长平狐
2012/08/13
466
0
如果只有一个月的时间学 iOS 开发,我们该做些什么?

一年前,我还是一个 Android 开发者。那时候我没有任何 iOS 编程相关的知识,我甚至没用过任何苹果的产品。然而,这已成为过去,现在我已经能同时开发 iOS 和 Android 应用了。 现在,我想给...

oschina
2017/03/09
3.3K
13
iphone开发资源汇总

iphone开发资源汇总 如何用Facebook graphic api上传视频: http://developers.facebook.com/blog/post/532/ Keychain保存数据封装: https://github.com/carlbrown/PDKeychainBindingsContr......

长平狐
2012/10/25
232
0
ArcGIS for iOS 开发系列(1) – 基本概念

1.1 iOS简介 2006年苹果公司发布了智能手机iPhone,卓越的外形设计和新颖的触摸式交互,令其迅速风靡全球,随后发布的平板电脑iPad同样也取得了巨大成功,二者所搭载的都是iOS智能移动操作系...

长平狐
2012/11/28
867
0

没有更多内容

加载失败,请刷新页面

加载更多

学习LinkedBlockingDeque源码

之前已经看了实现deque接口的ArrayDeque, ConcurrentLinkedDeque, LinkedList,也不能落下ConcurrentLinkedDeque,但是好像没在项目中用过。 这里看到实现的接口还有BlockingDeque<E>, Block...

woshixin
29分钟前
1
0
实战:用Python实现随机森林

摘要: 随机森林如何实现?为什么要用随机森林?看这篇足够了! 因为有Scikit-Learn这样的库,现在用Python实现任何机器学习算法都非常容易。实际上,我们现在不需要任何潜在的知识来了解模型...

阿里云官方博客
32分钟前
1
0
进程管理利器Supervisor--centos7下安装与卸载

目录 概述 环境准备 检查python环境 在线安装 配置Supervisor 启动并验证 概述 Supervisor的安装可以有在线安装和离线安装两种方式。安装方式取决于服务器是否联网,联网的话可采用在线安装,...

java_龙
39分钟前
4
0
spring系列汇总

spring spring-基于可扩展Schema的特性自定义标签 springmvc-同一个访问资源,多种视图解析方式 spring cache 配置使用aspectj模式织入 基于注解的spring缓存,轻松无侵入解决cache问题 spri...

细肉云吞
39分钟前
4
0
vsftpd搭建ftp

12月10日任务 14.4 exportfs命令 14.5 NFS客户端问题 15.1 FTP介绍 15.2/15.3 使用vsftpd搭建ftp exportfs命令 在nfs运行后的一段时间内,如果需要添加共享目录,这时需要修改exports文件,并...

robertt15
41分钟前
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部