Objective-C初学者指南[美] Gary Bennett,[美] Mitch Fisher,[美] Brad Lees作者简介、书籍目录、内容摘要、编辑推荐

内容概要

  苹果移动应用开发成为热点,越来越多的人投身其中,其中不乏从未涉及软件行业的菜鸟级人士。他们也能学会编写iPhone或iPad程序吗?也能做出App应用吗?答案是肯定的。本书就是针对这类人编写的。

  本书汇编自xcelMe.com网站培训资料,从面向对象编程和程序逻辑的基本概念入手,引领读者踏上熟练运用Xcode和Objective-C的征程,手把手教读者编写iPhone、iPad和Mac应用程序。作者注重实践,始终强调亲自动手的重要性,并在书中给出了大量示例代码和图示,教会读者从编程的角度考虑问题,使用Objective-C构建编程逻辑,并将所有东西合成到实际应用中。书中的方法对初学者很有帮助,真正做到让读者可以零基础起步,迅速掌握iPhone/iPad开发的要领。

  xcelMe.com提供关于本书内容的在线研讨、Q&A论坛以及习题答案。如果你想在App
Store中一举成名,本书就是你的起点。

  作者简介

  Gary Bennett
资深软件开发工程师,xcelMe.com总裁,曾在多家公司担任CIO和总裁,并在2002年带领VistaCare成功上市。xcelMe.com是一家提供在线iPhone/iPad编程课程的网站,已培训了数千名iPhone/iPad应用程序开发人员。iTunes
App
Store上有不少大卖的应用程序都是xcelMe.com的学员开发出来的。除本书外,Gary还与人合著了《精彩iPhone炫酷开发:七位一线高手的编程和设计范例》(人民邮电出版社出版)。

  Mitch Fisher
资深软件开发工程师,20世纪80年代就投身于计算机领域,先后担任过多家大中型企业的软件工程师、软件架构师和软件经理。目前致力于开发iOS应用程序、创建Unix服务器端技术以及在xcelMe.com教授iOS开发。

  Brad Lees
在应用程序开发和服务器管理方面有超过15年的经验,尤其擅长设计房地产开发系统和金融机构的软件程序。Brad先后担任过The Lyle
Anderson公司信息系统经理、Smarsh产品研发经理、iNation应用程序开发副总裁,以及亚利桑那州最大的建筑设计事务所Orcutt/Winslow
Partnership的信息技术经理。

  书籍目录

  目录
第1章  成为优秀的iOS或Mac 程序员 
 
1.1  像开发人员一样思考 
 
1.2  完成开发周期 
 
1.3  面向对象编程简介 
 
1.4  操纵Alice界面 
 
1.5  总结 
 
1.6  习题 
 
第2章  编程基础 
 
2.1  和Alice一起漫游仙境 
 
2.1.1  导航菜单 
 
2.1.2  世界窗口 
 
2.1.3  Alice中的类、对象和实例 
 
2.1.4  对象树 
 
2.1.5  编辑区域 
 
2.1.6  细节区域 
 
2.1.7  事件区域 
 
2.2  创建一个Alice应用——登月 
 
2.3  你的第一个Objective-C程序 
 
2.4  总结 
 
2.5  习题 
 
第3章  关于数据 
 
3.1  编程中用到的数字系统 
 
3.1.1  比特 
 
3.1.2  字节 
 
3.1.3  十六进制计数 
 
3.1.4  Unicode 
 
3.2  数据类型 
 
3.3  在Alice中使用变量和数据类型 
 
3.4  数据类型与Objective-C 
 
3.5  确定问题所在 
 
3.6  总结 
 
3.7  习题 
 
第4章  程序流的决策与计划 
 
4.1  布尔逻辑 
 
4.1.1  真值表 
 
4.1.2  比较运算符 
 
4.2  应用设计 
 
4.2.1  伪代码 
 
4.2.2  设计需求 
 
4.2.3  流程图 
 
4.2.4  示例应用的设计和流程图 
 
4.2.5  应用的设计 
 
4.2.6  使用循环来重复程序语句 
 
4.3  示例应用在Alice中的程序实现 
 
4.4  示例应用在Objective-C中的程序实现 
 
4.4.1  嵌套的if语句和else-if语句 
 
4.4.2  删掉多余字符 
 
4.4.3  通过重构改善代码 
 
4.4.4  运行应用 
 
4.5  和Alice道别 
 
4.6  总结 
 
4.7  习题 
 
第5章  基于Objective-C的面向对象编程 
 
5.1  对象 
 
5.2  什么是类 
 
5.3  类的设计 
 
5.3.1  属性的设计 
 
5.3.2  方法的设计 
 
5.3.3  类的实现 
 
5.4  继承 
 
5.5  为什么使用OOP 
 
5.5.1  它无处不在 
 
5.5.2  消除冗余代码 
 
5.5.3  方便调试 
 
5.5.4  方便替换 
 
5.6  高阶课题 
 
5.6.1  接口 
 
5.6.2  多态 
 
5.7  总结 
 
5.8  习题 
 
第6章  学习Objective-C和Xcode 
 
6.1  Objective-C简史 
 
6.2  理解语言的符号 
 
6.3  面向对象概念 
 
6.4  用Xcode再写一个程序 
 
6.5  总结 
 
6.6  习题 
 
第7章  Objective-C的类、对象及方法 
 
7.1  创建Objective-C类 
 
7.1.1  声明接口和实例变量 
 
7.1.2  发送消息(方法) 
 
7.1.3  实现文件的使用 
 
7.1.4  方法的编码 
 
7.2  新类的使用 
 
7.2.1  创建项目 
 
7.2.2  添加对象 
 
7.2.3  完成实现文件 
 
7.2.4  创建用户界面 
 
7.2.5  连接代码 
 
7.2.6  运行程序 
 
7.2.7  充分发挥类方法的作用 
 
7.3  访问Xcode文档 
 
7.4  总结 
 
7.5  习题 
 
第8章  Objective-C编程基础 
 
8.1  集合类 
 
8.1.1  使用NSSet 
 
8.1.2  使用NSArray 
 
8.1.3  NSDictionary 
 
8.1.4  确定集合元素的类型 
 
8.2  使用可变类 
 
8.2.1  NSMutableSet 
 
8.2.2  NSMutableArray 
 
8.2.3  NSMutableDictionary 
 
8.3  创建BookStore应用程序 
 
8.4  引入实例变量 
 
8.4.1  访问实例变量 
 
8.4.2  使用获取方法和设置方法 
 
8.5  引入属性 
 
8.5.1  属性的使用 
 
8.5.2  理解惯例的重要性 
 
8.6  完成MyBookstore程序 
 
8.6.1  创建视图 
 
8.6.2  添加实例变量 
 
8.6.3  添加描述 
 
8.6.4  创建一个简单的数据模型类 
 
8.6.5  更改MasterViewController 
 
8.6.6  更改DetailViewController 
 
8.7  总结 
 
8.8  习题 
 
第9章  比较数据 
 
9.1  复习布尔逻辑 
 
9.2  使用关系操作符 
 
9.2.1  比较数值 
 
9.2.2  创建示例Xcode应用 
 
9.3  使用布尔表达式 
 
9.3.1  比较字符串 
 
9.3.2  比较日期 
 
9.3.3  比较的结合 
 
9.4  使用switch语句 
 
9.5  总结 
 
9.6  习题 
 
第10章  创建用户界面 
 
10.1  理解Interface Builder 
 
10.2  模型?视图?控制器 
 
10.3  人机交互界面准则(HIG) 
 
10.4  用Interface Builder创建iPhone示例应用 
 
10.4.1  使用Interface Builder 
 
10.4.2  Dock 
 
10.4.3  库 
 
10.4.4  查看器窗格和选择器工具条 
 
10.4.5  创建视图 
 
10.4.6  使用插口 
 
10.4.7  连接动作和对象 
 
10.4.8  实现文件 
 
10.5  总结 
 
10.6  习题 
 
第11章  数据存储 
 
11.1  存储注意事项 
 
11.2  首选项 
 
11.2.1  首选项的写操作 
 
11.2.2  首选项的读操作 
 
11.3  数据库 
 
11.4  在数据库中存储信息 
 
11.5  开始使用Core Data 
 
11.6  模型 
 
11.6.1  受控对象上下文 
 
11.6.2  设置界面 
 
11.7  总结 
 
11.8  习题 
 
第12章  协议和委托 
 
12.1  多继承 
 
12.2  理解协议 
 
12.3  理解委托 
 
12.4  下一步 
 
12.5  总结 
 
第13章  内存、地址和指针 
 
13.1  理解内存 
 
13.1.1  比特、字节和基数 
 
13.1.2  十进制转换为二进制 
 
13.1.3  使用十六进制的计数法 
 
13.2  理解内存地址的基础 
 
13.3  内存的分配 
 
13.4  解除分配内存 
 
13.5  在Objective-C中用ARC管理内存 
 
13.6  没有ARC的Objective-C内存管理 
 
13.6.1  使用保留/释放模型 
 
13.6.2  处理隐含的保留消息和自动释放 
 
13.6.3  发送dealloc消息 
 
13.7  如果出了问题 
 
13.8  ARC注意事项 
 
13.9  总结 
 
13.10  习题 
 
第14章  Xcode调试器 
 
14.1  准备调试 
 
14.1.1  设置断点 
 
14.1.2  使用断点导航器 
 
14.1.3  调试基础 
 
14.1.4  使用调试器控件

  章节摘录

  版权页: 插图: 对于首选项的写操作,你需要做的就是创建一个NSUserDefaults对象。就像下面这行代码一样: NSUserDefaults*prefs=(NSUserDefaults standardUserDefaults); 这行代码实例化了对象的prefs,现在可以使用它来设置首选项的值。下一步,需要设置你想要存储的值所对应的首选项的键。本章我们会继续使用前面的书店应用示例来展示特定的操作。对一个书店来说,你可能要在首选项中存储用户名或者密码。你也可能想要存储默认图书分类或者最近的搜索之类的东西。首选项文件对于存储这类信息来说很合适,因为这类信息只在程序启动的时候有读取的必要。 并且,在iPhone上,经常有必要保存当前状态。如果用户在使用应用的时候接到一个电话,你希望在他完成通话之后,能让你的应用恢复到用户通话之前所在的精确位置。现在对于iOS 4和iOS 5这些已经实现多任务功能的系统来说,这已经不那么必要了,但是如果你的应用能够在每次启动时记得用户上次使用它时正在做什么,你的用户还是很乐意的。 一旦实例化某个对象之后,开发者就可以调用setObjectforKey方法来对其进行设置。如果你想要保存用户名sherlock.holmes,就调用下面一行代码: (prefs setObject:@“sherlock.holmes”forKey:@“username”); 你可以用setInteger、setDouble、setBool、setFloat以及setURL方法,而不用直接调用setObject,这取决于你要存储在首选项文件中的信息类型。假设你存储的是用户想要在列表中看到的图书数量,下面就是使用setInteger来存储首选项的例子: (prefs setInteger: 10 forKey:@”booksInList”); 过一段时间之后,你的应用会自动向首选项文件中做写操作。你也可以通过调用synchronize函数强制应用保存首选项,但是在大多数情况下没有这个必要。下面这一行代码就可以调用同步函数: (prefs synchronize); 只用3行代码,我们就可以创建一个首选项对象,设置两个首选项的值,写首选项文件。

  媒体关注与评论

  一本初学者不容错过的好书!本书最大的优点在于不需要安装特殊软件,大部分资源都是免费的。——Overstock.com评论似乎每个人都可以为苹果的iPhone、iPad和Mac编写应用程序,那到底如何入手呢?来吧,本书告诉你这一切!——巴诺书店读者评论

  编辑推荐

  在线教授iPhone/iPad编程课程权威公司xcelMe.com总裁著作让各类程序员将自己现有的编程经验应用到Objective-C编程中来帮助没有任何编程经验的人开发出应用程序不懂编程也能投身移动开发从零起步学会iPhone/iPad应用编程原书提供免费在线学习资源

  名人推荐

  “一本初学者不容错过的好书!本书最大的优点在于不需要安装特殊软件,大部分资源都是免费的。” --Overstock.com评论 “似乎每个人都可以为苹果的iPhone、iPad和Mac编写应用程序,那到底如何入手呢?来吧,本书告诉你这一切!” --巴诺书店读者评论