书籍详情

Core Data

Core Data

作者:Florian Kugler(佛罗莱恩·库格勒)

出版社:电子工业出版社

出版时间:2016-09-01

ISBN:9787121294594

定价:¥69.00

购买这本书可以去
内容简介
  本书向读者介绍使用Core Data时需要特别注意的事项,这将帮助读者避开使用Core Data这个十分灵活且异常强大的框架时的一些陷阱。我们从一个简单的应用例子开始,逐步将其扩展为包含关系、高级数据类型、并发、同步以及其他很多特性的完整例子,并在这个过程中对所有这些主题进行讲解。在本书后半部分,我们还会超出这个基本应用所需要涉及的范围,将知识点深入扩展到Core Data幕后的工作原理上。我们会学习如何获取高性能、不同Core Data设置之间的权衡,以及如何对Core Data代码进行调试和性能测试。本书所有的代码都使用Swift编写,我们也展示了如何将Swift的语言特性融入Core Data中,并写出优雅和安全的代码。我们希望读者在阅读本书的时候有一定的Swift和iOS开发基础,不过相信不论是新人还是富有经验的开发者,都能从本书中找到实用的信息和设计模式。
作者简介
  王巍 (onevcat) ,《Swifter(第2版):100个Swift 2 开发必备Tip》作者,来自中国的一线 iOS 开发者,毕业于清华大学。在校期间就开始进行 iOS 开发,拥有丰富的 Cocoa 和 Objective-C 开发经验,另外他也活跃于使用 C# 的 Unity3D 游戏开发界。曾经开发了《小熊推金币》,《Pomo Do》等一系列优秀的 iOS 游戏和应用。在业余时间,王巍会在 OneV's Den 撰写博客,分享他在开发中的一些心得和体会。另外,王巍还是翻译项目 objc 中国的组织者和管理者,为中国的 Objective-C 社区的发展做出了贡献。同时,他也很喜欢为开源社区贡献代码,是著名的 Xcode 插件 VVDocumenter 的作者。现在王巍旅居日本,并就职于即时通讯软件公司 Line,从事 iOS 开发工作,致力于为全世界带来更好体验和功能的应用。
目录
I Core Data基础 1
第1章 初探Core Data 2
1.1 Core Data架构 2
1.2 数据建模 4
实体和属性 5
托管对象子类 6
1.3 设置Core Data栈 7
1.4 显示数据 9
获取请求 11
Fetched Results Controller 13
1.5 操作数据 19
插入对象 19
删除对象 22
1.6 总结 26
重点 26
第2章 关系 27
2.1 添加Country和Continent实体 27
子实体 31
2.2 创建关系 33
其他类型的关系 35
建立关系 36
关系和删除 41
2.3 适配用户界面 43
2.4 总结 48
重点 48
第3章 数据类型 49
3.1 标准数据类型 49
数值类型 49
日期 50
二进制数据 50
字符串 51
3.2 原始属性和临时属性 51
原始属性 51
临时属性 52
3.3 自定义数据类型 52
自定义值转换器 52
自定义存取方法 56
3.4 默认值和可选值 59
3.5 总结 60
重点 60
II 理解Core Data 61
第4章 访问数据 62
4.1 获取请求 62
对象惰值 64
获取请求的结果类型 67
批量获取 69
异步获取请求 70
4.2 关系 70
4.3 其他取回托管对象的方法 71
4.4 内存考量 72
托管对象及其上下文 72
关系的循环引用 73
4.5 总结 74
重点 74
第5章 更改和保存数据 76
5.1 变更追踪 76
5.2 保存更改 78
验证 80
保存冲突 82
5.3 批量更新 82
5.4 总结 84
重点 84
第6章 性能 86
6.1 Core Data栈的性能特质 86
详解性能 87
6.2 避免获取请求 89
关系 89
搜索特定的对象 91
类似单例的对象 93
小数据集 96
6.3 优化获取请求 96
对象排序 96
避免多个、连续的惰值 97
批量获取 98
Fetched Results Controller 99
关系预加载 99
索引 100
6.4 插入和修改对象 102
6.5 如何构建高效的数据模型 103
6.6 字符串和文本 106
6.7 独家秘诀的可调参数 106
6.8 总结 107
III 并行和同步 109
第7章 与网络服务同步 110
7.1 组织和设置 110
项目结构 111
7.2 同步架构 112
7.3 上下文属主 113
线程、队列和上下文 113
7.4 响应本地更改 115
7.5 响应远程更改 119
7.6 更改处理器 119
上传Moods 120
7.7 删除本地对象 123
7.8 分组和保存更改 123
7.9 扩展同步架构 125
跟踪每个属性的更改 125
链接更改处理器 125
自定义网络代码 126
第8章 使用多个上下文 128
8.1 Core Data和并发 128
在不同的上下文之间传递对象 130
合并更改 132
8.2 Core Data栈 134
两个上下文,一个协调器 134
两个协调器 136
嵌套上下文的设置 137
8.3 总结 144
重点 145
第9章 使用多个上下文的问题 146
9.1 保存冲突 146
预定义的合并策略 147
自定义合并策略 148
9.2 删除对象 153
两步删除法 154
传播删除 156
9.3 唯一性约束 157
9.4 总结 159
IV 进阶话题 161
第10章 谓词 162
10.1 一个简单的例子 162
使用谓词 163
10.2 用代码来创建谓词 164
10.3 格式字符串 165
比较 166
可选类型值 167
日期 168
10.4 合并多个谓词 168
常量谓词 170
10.5 遍历关系 171
子查询 171
10.6 匹配对象和对象ID 172
10.7 匹配字符串 173
字符串和索引 175
10.8 可转换的值 175
10.9 性能和排序表达式 176
10.10 总结 177
第11章 文本 178
11.1 一些例子 178
11.2 搜索 179
字符串标准化 180
高效搜索 182
11.3 排序 183
一种简单的方法 183
更新一个已排序的数组 184
持久化一个已排序的数组 188
11.4 总结 189
重点 189
第12章 数据模型版本以及迁移数据 190
12.1 数据模型版本 190
12.2 数据迁移的过程 192
自动数据迁移 193
手动数据迁移 194
12.3 推断的映射模型 201
12.4 自定义映射模型 202
自定义实体映射策略 204
12.5 数据迁移和用户界面 206
12.6 测试数据迁移 209
调试数据迁移时的输出 210
12.7 总结 210
重点 211
第13章 性能分析 212
13.1 SQL调试输出 212
获取请求 213
填充惰值 217
保存数据 218
13.2 Core Data Instruments 219
13.3 线程保护 222
13.4 总结 222
第14章 关系型数据库基础和SQL 223
14.1 一个嵌入式数据库 223
14.2 数据表、列以及行 224
14.3 数据库系统的结构 225
查询处理器 225
存储管理器 226
事务管理器 226
数据和元数据 226
14.4 数据库语言SQL 227
排序 228
14.5 关系 229
一对一关系 229
一对多关系 230
多对多关系 230
14.6 事务 231
14.7 索引 232
14.8 日志 232
14.9 总结 233
猜您喜欢

读书导航