iOS开发中的数据持久化(学习体会)
2015-03-22 12:12
274 查看
以前做企业移动app的时候,用的最多的是SAP/IBM的移动数据库和相关加密存储API,以及开源的sqlite移动数据库。
这两天翻翻iOS开发的书,还真是开卷有益。
在《精通iOS开发》一书第13章中,讲到了下面四种iOS上的数据持久化,结合《Objective-C基础教程》补充下精通一书没有说清楚的地方
1 属性列表:英文property list,是Cocoa中的一种类型的class,通常简写plist,包括NSArray, NSDictionary, NSString, NSNumber, NSDate, NSData以及他们的Mutable的类。
这几个classt都有writeToFile的方法写对象到文件中,相应的也有xxxxxWithContentOfFile方法来读取文件数据并反序列化为对象
2 对象归档:Ojbect archiving归档,很像Java语言中的Serilaze序列化的。 复杂的对象要归档(序列化),需要遵循NSCoding协议,需要自己实现encode/decode等方法。
3 SQLite3数据库:一个C语言(原始人啊)的第三方类库,在iOS/xcode中内置了。像我这种企业developer贼喜欢。
4 Core Data:apple给现代人用的可偷懒的工具和API(类似Java世界的hibernate API和eclipse里面的ORMapping工具),包括图形化对象建模modeling,提供简单易用的创建/保存/搜索对象的API(程序员不关心它下面的持久化层到底是sqlite数据库还是内存还是文件)。
这两天翻翻iOS开发的书,还真是开卷有益。
在《精通iOS开发》一书第13章中,讲到了下面四种iOS上的数据持久化,结合《Objective-C基础教程》补充下精通一书没有说清楚的地方
1 属性列表:英文property list,是Cocoa中的一种类型的class,通常简写plist,包括NSArray, NSDictionary, NSString, NSNumber, NSDate, NSData以及他们的Mutable的类。
这几个classt都有writeToFile的方法写对象到文件中,相应的也有xxxxxWithContentOfFile方法来读取文件数据并反序列化为对象
2 对象归档:Ojbect archiving归档,很像Java语言中的Serilaze序列化的。 复杂的对象要归档(序列化),需要遵循NSCoding协议,需要自己实现encode/decode等方法。
3 SQLite3数据库:一个C语言(原始人啊)的第三方类库,在iOS/xcode中内置了。像我这种企业developer贼喜欢。
4 Core Data:apple给现代人用的可偷懒的工具和API(类似Java世界的hibernate API和eclipse里面的ORMapping工具),包括图形化对象建模modeling,提供简单易用的创建/保存/搜索对象的API(程序员不关心它下面的持久化层到底是sqlite数据库还是内存还是文件)。
相关文章推荐
- ios开发学习笔记--数据持久化之偏好设置(NSUserDefault)
- 黑马程序员——IOS学习九:ios开发之数据的持久化存储机制——黑马 ios 技术博客
- IOS学习九:ios开发之数据的持久化存储机制
- IOS学习九:ios开发之数据的持久化存储机制
- IOS学习:ios开发之数据的持久化存储机制
- ios开发学习笔记--数据持久化之归档解档(NSKeyedArchiver/ NSKeyedUnarchiver)
- ios开发学习笔记--数据持久化之数据库(SQLite.swift)
- IOS学习之ios开发之数据的持久化存储机制
- IOS 开发学习二十 数据持久化:读写属性列表示例
- IOS开发---菜鸟学习之路--(三)-数据解析
- ios开发之数据的持久化存储机制
- 学习IOS开发UI篇--MVC设计界面及数据的模型转换
- ios学习(五):数据持久化之属性列表(.plist)
- ios学习笔记之四种数据持久化方法
- IOS开发---菜鸟学习之路--(十九)-利用NSUserDefaults存储数据
- IOS开发---菜鸟学习之路--(二)-数据获取
- 学习IOS开发UI篇--数据存储
- 从今天开始学习iOS开发(iOS 7版)--实现一款App之合并数据
- iOS开发笔记--数据持久化的四种方式
- ios学习笔记之四种数据持久化方法