且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

《Core Data应用开发实践指南》一1.2 Core Data的适用场合

更新时间:2022-10-04 19:30:24

本节书摘来自华章出版社《Core Data应用开发实践指南》一书中的第1章,第1.2节,作者 (美)Tim Roadley,更多章节内容可以访问云栖社区“华章计算机”公众号查看

1.2 Core Data的适用场合

如果应用程序要保存的设置数据太多,以致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