《Core Data应用开发实践指南》一1.2 Core Data的适用场合
本节书摘来自华章出版社《Core Data应用开发实践指南》一书中的第1章,第1.2节,作者 (美)Tim Roadley,更多章节内容可以访问云栖社区“华章计算机”公众号查看
如果应用程序要保存的设置数据太多,以致NSUserDefaults及“特性列表”(property list)这种简单的存储方案无法应付,那么就会出现内存占用量方面的问题。解决办法是直接使用数据库或通过Core Data来间接操作数据库。选用Core Data的好处是,不用再花时间编写数据库接口的代码了。此外,你还将享受性能方面的优势,而且可以使用诸如撤销及验证等强大的功能。假如选择直接使用数据库,那就要花时间去做开发与测试工作,也就是通常所说的“重新发明轮子”(reinventing the wheel),而使用Core Data则无须操心这些事情,开发者可以把精力放在应用程序中更为重要的事情上面。
你可能在想:我只是要把一些数据保存到磁盘中而已,用得着这么麻烦吗?其实只要理解了Core Data的几个要点,你就会发现这一点都不麻烦。笔者相信你自己确实能够写出一套数据库接口,而且这套接口在短时间内的效果也许还很好。但是,当需求有了变化,或有了新需求时,比方说,现在要支持多个设备之间的数据同步功能,该怎么办呢?在不影响用户界面的前提下,你有没有把握写出多线程环境里的数据导入例程呢?你能不能写出既支持撤销与验证功能,又能在老式iPhone上面高速运行,而且内存占用量还很小的程序呢?
对于上面这些工作,其实Core Data框架早就做好了,而且已经测试过了。即便你的应用程序所要处理的数据量特别少,也依然值得使用Core Data,因为这样可以令应用程序能够适应将来的需求变化,同时又不会影响到性能。
一旦用上Core Data,你就会见识到它的健壮与流畅程度。每天都有很多人在使用集成了Core Data的应用程序,而这也使得Core Data的各项功能日趋成熟,同时其性能也令人满意。简言之:要是武断地抛弃Core Data不用,那就要自己编写数据库接口;反之,若学会了Core Data,则能节省大量开发时间,而且还能自动享受到由Core Data所提供的许多附加功能。
在继续往下阅读之前,请你先确认Mac中安装的Xcode版本不低于5。本书范例代码是针对iOS 7编写的,所以无法在低版本的Xcode里面使用。另外,笔者也建议你注册成为“iOS Developer Program”的会员,这样你就可以根据需要在相关设备上运行范例程序了。入会详情可参阅:http://developer.apple.com。
「最简单」的 Core Data 上手指南 本文讲的是「最简单」的 Core Data 上手指南,在过去的几个月里,我花费了大量的时间在研究 Core Data 之上,我得去处理一个使用了很多陈旧的代码,糟糕的 Core Data 以及违反了多线程安全的项目。讲真,Core Data 学习起来非常的困难
相关文章
- 如何从40亿整数中找到不存在的一个 webservice Asp.Net Core 轻松学-10分钟使用EFCore连接MSSQL数据库 WPF实战案例-打印 RabbitMQ与.net core(五) topic类型 与 headers类型 的Exchange
- WebAPI调用笔记 ASP.NET CORE 学习之自定义异常处理 MySQL数据库查询优化建议 .NET操作XML文件之泛型集合的序列化与反序列化 Asp.Net Core 轻松学-多线程之Task快速上手 Asp.Net Core 轻松学-多线程之Task(补充)
- 关于core_cm3.c和core_cm3.h,Core_cmFunc.h 和 Core_cmInstr.h的理解
- 【HMS Core】如何进行应用内支付服务的地址迁移?
- 【HMS Core】运动健康服务如何查询应用已授权的权限列表
- 华为HMS Core助力开发者打造精品应用,共创数智生活
- 华为联运游戏或应用审核驳回:游戏启动后弹出HMS Core更新提示,点击稍后更新,反复拉起升级提示,无法进入游戏
- HMS Core华为分析丨受众细分,多场景促进精益运营
- 【原创】使用.NET Core 1.0创建一个Self-Contained控制台应用
- .Net Core 3.0原生Json解析器
- .Net Core控制台应用加载读取Json配置文件
- 一、Core授权-2 之.net core 基于Jwt实现Token令牌
- 《Core Data应用开发实践指南》一1.3 创建Grocery Dude项目
- 《Core Data应用开发实践指南》一2.3 实体
- 《Core Data应用开发实践指南》一2.4 属性
- 《Core Data应用开发实践指南》一2.8 创建NSManagedObject的子类
- 《Core Data应用开发实践指南》一2.12 后端SQL的可见性
- 《Core Data应用开发实践指南》一2.13 获取托管对象
- 《Core Data应用开发实践指南》一2.16 习题
- 《Core Data应用开发实践指南》一3.3 轻量级的迁移方式
- 《Core Data应用开发实践指南》一3.7 习题
- 《Core Data应用开发实践指南》一导读
- 【HMS Core】华为分析买量用户接入的相关问题
- 【HMS Core】AR Engine、3D建模服务相关问题
- HMS Core影音娱乐解决方案:融合技术优势 聚力应用创新
- HMS Toolkit自动化环境配置,助您高效集成HMS Core
- 在 .net core 与 .net framework 应用之间共享库
- 通俗易懂,什么是.NET?什么是.NET Framework?什么是.NET Core?