《Core Data应用开发实践指南》一1.3 创建Grocery Dude项目

1.3 创建Grocery Dude项目

Grocery Dude是个运行在iPhone上的范例程序,在学习本书的过程中,你将了解到它的制作流程。学会了Core Data中的某个特性或某项开发技巧之后,你可以将其运用在Grocery Dude程序上面。到了本书收尾的时候,你将会制作好一款功能完备而且运行速度很快的Code Data程序,它能够同iCloud紧密地集成在一起。假如你现在就想直接看看成品,那可以去App Store下载Grocery Dude。请注意,Grocery Dude是专门为iPhone编写的。无论要把数据显示在多大的屏幕上,Core Data的使用理念都是一致的。好了,言归正传,我们现在就来编写这款程序!
站在冰箱、储藏室、碗柜前面,或待在家里其他地方的时候,你有没有觉得自己忘了买什么东西?到了商店之后,是不是又忘了要买的东西放在哪排货架上?更麻烦的是,当你走入第8条过道(aisle)时,发现要买的东西在第2条过道旁的货架上,于是绕了半天跑过去,等拿了那件货品之后,却又发现下一个要买的东西竟然就在第8条过道附近,于是又得折回来!
有了Grocery Dude之后,就不用担心这些问题了:
它可以分类显示家里各个位置的东西,以此提示你该购买哪些生活用品了。
在超市购物时,它可以告诉你某件货品摆在哪条过道旁的货架上。
它可以将待买物品按照过道编组,这样的话,每条过道只需走一遍,即可拿完所需采购的货品。
它可以通过iCloud在各设备之间同步数据。
它还能帮你学习Core Data!
附录A按步骤讲解了怎样从头开始创建本书的主项目Grocery Dude。你可以自己照着做,也可以直接从http://www.timroadley.com/LearningCoreData/GroceryDude-AfterAppendixA.zip把这个起始项目下载下来。下载好之后,需要用Xcode 5或更高版本的Xcode打开它。

时间: 2025-01-27 03:47:51

《Core Data应用开发实践指南》一1.3 创建Grocery Dude项目的相关文章

《Core Data应用开发实践指南》一第2章 托管对象模型的基础知识

第2章 托管对象模型的基础知识 知识只能得自经验.-阿尔伯特•爱因斯坦第1章把Core Data中的一些基本内容添加到了Grocery Dude范例程序里面.现在我们已经配置好持久化存储区.持久化存储协调器.托管对象模型以及托管对象上下文了,但是对象图还空着.这就好比已经把做饼干的全部材料都准备好了,但却发现还没有饼干模型切割刀一样!本章将要讲解托管对象模型的基础知识,并告诉你配置范例程序对象图的全过程.

《Core Data应用开发实践指南》一3.5 通过迁移管理器来迁移数据

3.5 通过迁移管理器来迁移数据 除了通过NSPersistentStoreCoordinator来迁移存储区之外,还可以采用迁移管理器来做.迁移管理器可以使开发者全权掌控迁移过程中创建的文件,从而令他们能够按自己的方式来灵活处理迁移中的各种问题.使用迁移管理器的一个好处就是可以向用户报告迁移进度,使用户知道应用程序哪次会启动得比较慢一些,所以需要耐心等待.虽说迁移过程理应执行得非常快才对,但当数据库比较大.变动比较复杂时,迁移过程就需要耗费一定的时间了.为了使用户界面保持流畅,迁移过程必须在后

《Core Data应用开发实践指南》一3.1 修改托管对象模型

3.1 修改托管对象模型 在应用程序的进化过程中,其托管对象模型也可能需要改变.对于一些比较简单的修改,诸如设定属性的默认值.设定验证规则.使用获取请求模板等,是可以直接实施的.而对于另外一些更为结构化的(structural)修改,则需先把持久化存储区迁移到新的模型版本才行.假如没有提供迁移数据所需的映射与设定,那么应用程序就会崩溃.为了继续构建范例程序,需要把上一章中的代码添加到Grocery Dude项目中.或者可以去http://www.timroadley.com/LearningCo

《Core Data应用开发实践指南》一1.4 为现有的应用程序添加Core Data支持

1.4 为现有的应用程序添加Core Data支持 在Xcode中创建iOS应用程序项目时,可以使用各种起始模板(starting-point template).假如要根据Master-Detail.Utility Application或Empty Application等模板来创建项目,那么只需勾选Use Core Data,即可在项目中使用Core Data.不过,Grocery Dude项目是根据Single View Application模板创建的,它起初并没有包含Core Dat

《Core Data应用开发实践指南》一2.8 创建NSManagedObject的子类

2.8 创建NSManagedObject的子类 托管对象模型就位之后,我们就该根据Item实体来创建NSManagedObject的子类了.有了这些子类文件,就可以在对象上面直接用"点"(.)来操作数据了,而不用再编写SQL查询语句.如果将来模型变了,那么就需要按照下面所讲的流程重新生成这些文件.尽管开发者也可以在这些生成的文件里自行添加方法,但笔者觉得不应该这么做,因为重新生成之后,原来所做的修改就会丢失.假如确实需要添加自定义的方法,那么可以从中继承子类,或是针对生成的文件创建类

《Core Data应用开发实践指南》一2.1 托管对象模型是什么

2.1 托管对象模型是什么 托管对象模型是一种数据结构.数据结构.纲要.对象图.数据模型.托管对象模型这些术语其实可以互换,因为它们的意思差不多.比方说,你要重新设计一个不使用Core Data的数据库,那么可能会配置一套数据库模式,并把它称作数据模型.而Core Data关注的是(托管)对象.于是,我们不把这个模式称为数据模型,而是把它叫做托管对象模型.尽管笔者采用的是这套称呼,但你完全可以把它叫做对象模型.对象图.模式或数据结构.为了继续构建范例程序,需要把上一章中的代码添加到Grocery

《Core Data应用开发实践指南》一1.1 Core Data是什么

1.1 Core Data是什么 Core Data是个框架,它使得开发者可以把数据当成对象来操作,而不必在乎数据在磁盘中的存储方式.对于Objective-C程序员来说,这很有用,因为他们已经可以通过代码非常熟练地操作对象了.由Core Data所提供的数据对象叫做托管对象(managed object),而Core Data本身则位于你的应用程序和持久化存储区(persistent store)之间.持久化存储区是个通用的术语,指的是像SQLite数据库.XML文件(iOS不支持用XML文件

《Core Data应用开发实践指南》一3.2 添加模型版本

3.2 添加模型版本 为了不使应用程序像图3-1那样崩溃,我们需要在修改模型之前先创建新的模型版本.添加新模型之后,就不应该再删除旧版的模型了.旧的模型有助于把原来的持久化存储区迁移到当前的模型版本.假如用户的设备上原来就没有持久化存储区,那么可以先不考虑模型版本控制问题,等到应用程序在App Store上架之后再说.请按下列步骤修改Grocery Dude,以便添加模型版本: 选中Model.xcdatamodeld. 点击Editor>Add Model Version...菜单项. 点击F

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

1.2 Core Data的适用场合 如果应用程序要保存的设置数据太多,以致NSUserDefaults及"特性列表"(property list)这种简单的存储方案无法应付,那么就会出现内存占用量方面的问题.解决办法是直接使用数据库或通过Core Data来间接操作数据库.选用Core Data的好处是,不用再花时间编写数据库接口的代码了.此外,你还将享受性能方面的优势,而且可以使用诸如撤销及验证等强大的功能.假如选择直接使用数据库,那就要花时间去做开发与测试工作,也就是通常所说的&