mghouai 发表于 2014-8-15 09:20:44

《iOS开发完全上手》——使用iOS 7和Xcode 5开发移动与平板应用


内容简介
一下介绍比较详细,也只有很专业的人士才可以看的懂。对ios开发感兴趣的朋友,推荐书小编给你推荐这本《iOS开发完全上手》。
对于ios 7开发新手来说,《ios开发完全上手——使用ios 7和xcode 5开发移动与平板应用》是完美起步。通过学习本书,可为ios开发奠定坚实基础,书中涵盖对objective-c语言的介绍、xcode开发工具、用户界面开发的最佳实践,以及针对应用开发和部署等各个方面的最佳实践。
在整本书中,你将随着创建和扩展一个简易的代客泊车应用程序来探索ios开发过程。这个动手实践项目帮助你尽快创建有意义的代码,建立自信并掌握知识。带注释的代码清单使用的都是最新的ios技术,使你为进入激动人心的开发领域做好充分准备。


作译者
Maurice Sharp是一位开发老手,拥有21年在大公司(苹果公司和Palm公司)和小公司培训、开展和管理移动开发的经验。日常工作之外,他为新成立的移动项目做咨询,并运营自己的咨询公司KLM Apps。
Erica Sadun是一位畅销书作者,曾编著、合著、参与贡献出版了几十本有关移动开发和相关主题的书籍,包括广受欢迎的The Core iOS 6 Developer's Cookbook、iOS Auto Layout Demystifi ed、iOS Drawing:Pratical UIKit Solutions 以及Talking to Siri 。她还在(The Unoffi cial Apple Weblog)TUAW.com上写博客。
Rod Strougo是一位作家、讲师和开发人员,他花了15年时间为IBM和AT&T编写企业软件。目前,Rod追随自己对游戏开发和教学的热情,在bignerdranch公司(www.bignerdranch.com)担任iOS培训师。

前言  “移动互联网是未来”是近来越来越常听到的短语。提到移动互联网时,没有什么设备比得过苹果公司的用户友好性更好。
  若你想要将iOS开发作为自己的技能集合的技能之一,需要从何处开始呢?需要以及选择哪些资源呢?这取决于你的学习方式。本书涵盖的为实际操作的内容,目的是让你尽可能快地操作。首先以小事情起步,然后会基于你已知的内容,进一步积累知识。
  结果就形成了这样一本书,它用一种易于消化的格式向你传授编写应用程序所需的技能。你可以按照自己喜欢的速度来学习,快慢都行。当正在创建应用程序时,可以回头翻阅本书的特定部分,温习相关知识。
  那么,请找个舒适的位置,将Mac和iOS设备放置身旁,开始深入钻研!
  本书学习前提
  在进一步学习iOS开发之前,你需要:
  一台Mac电脑——运行当前或上一版本Mac OS操作系统的现代Mac电脑——当本书写作时,最新的版本是Mac OX Mountain Lion (v.10.8),Mavericks即将推出(本书未采用)。Mountain Lion之前的版本是Mac OS X Lion (v.10.7)。最理想情况是,你的Mac电脑使用最新版本的OS,拥有至少8GB的RAM,以及大量磁盘空间。
  一台iOS设备——尽管Xcode包含能用于开发应用程序的桌面模拟器,但你仍需要在实际设备上运行应用程序以确保它能正确运行。使用目标客户可能使用的设备型号,有助于确保应用程序能够在这些设备上良好地运行。
  确保Internet连入——下载与开发相关的资源。某些时候,可能还需要测试应用程序的无线功能。而且当然,你会想要向App Store提交你的应用。
  熟悉Objective-C——你需要使用Objective-C来创建面向iOS的本地应用程序。Objective-C语言基于ANSI C,带有面向对象的扩展,这意味着你还需要了解一些C语言的知识。如果曾使用Java或C++语言进行编程,并且熟悉C语言,你会发现使用Objective-C非常简单。在第2章“Objective-C新手训练营”中,对Objective-C语言进行了简短介绍,但更清晰的理解会有助于你更快地学习。
  你还需要Xcode,这是开发工具,以及苹果开发者账号,这会在第1章“初识iOS SDK”中介绍。
  iOS开发路线图
  一本书并不能满足每个人的所有需求。尽管我们可以尝试,但是如果我们将你所需了解的所有知识都打包到这本书中,你也不可能全部掌握。确实,针对Mac和iOS平台进行开发需要你了解很多知识。如果刚刚起步,并且没有任何编程经验,你的第一步行动应是选修一门大学级别的C语言编程课程。
  在了解C语言以及如何使用编译器(在基本的C语言课程中会学到)后,接下来的部分应该很简单。基于这些,你可以立即开展对Objective-C的学习,并且探索如何使用它并依靠Cocoa框架来编程。图P-1所示的流程图展示了Pearson Education出版的一些关键书目,能向你提供成为熟练iOS开发者所需的训练。
  图P-1iOS开发路线图
  在了解C语言之后,学习Objective-C语言编程有多个途径。如果想获得对这门语言的深入理解,可以阅读苹果公司的文档,或者挑选以下书籍中的一本:
  Objective-C Programming: The Big Nerd Ranch Guide by Aaron Hillegass (Big Nerd Ranch, 2012)
  Learning Objective-C: A Hands-on Guide to Objective-C for Mac and iOS Developers by Robert Clair (Addison-Wesley, 2011)
  Programming in Objective-C 2.0, fourth edition,by Stephen Kochan (Addison-Wesley, 2012)
  有这门语言作为后盾,接下来就是学习Cocoa和开发者工具,也被称作Xcode。对于这些知识,你有若干不同的选择。你又一次可以参考关于Cocoa和Xcode的苹果公司提供的文档。请参阅Cocoa Fundamentals Guide(http://developer.apple.com/mac/l ... n/Cocoa/Conceptual/ CocoaFundamentals/CocoaFundamentals.pdf),初步学习Cocoa。对于Xcode,参见A Tour of Xcode (http://developer.apple.com/mac/l ... nceptual/A_Tour_of_ Xcode/ A_Tour_of_Xcode.pdf)。如果更喜欢书籍,也可以向最牛的人学习。Aaron Hillegass,亚特兰大州的Big Nerd Ranch(www.bignerdranch.com)的创始人,是Objective-C Programming: The Big Nerd Ranch Guide一书第2版的合著者,也是很快要出第4版的Cocoa Programming for Mac OS一书的作者。Aaron所著的书在Mac开发者圈子评价很高,并且是你在cocoa-dev邮件列表中可以看到的推荐书目。至于Xcode的更多知识,在学完Sams Publishing出版,由Firiz Anderson所著的Xcode 4 Unleashed后,你就已经学得足够深入了。
.  注意:
  市面上有很多其他出版商出版的其他书籍,包括最畅销的Beginning iPhone 4 Development,该书由Dave Mark、Jack Nutting和Jeff LaMarche所著(Apress,2011)。如果完全是编程新手,另外一本值得挑选的书是Beginning Mac Programming,由Tim Isted所著(Pragmatic Programmers, 2011)。不要将自己限制于一本书或一家出版商。正如你通过与不同的开发者交谈可以学到很多东西,你可以从市场上别的书籍中学到很多技巧和窍门。
  要想真正掌握iOS开发,你需要查看很多信息来源:书籍、博客、邮件列表、苹果公司的文档,以及所有这些当中最好的一种——会议。如果得到了参加WWDC(苹果公司的Worldwide Developer Conference,世界开发者大会)的机会,你会了解我们所说的是什么。你在会议上与别的开发者交谈所花费的时间,以及在WWDC的案例中与苹果工程师交流的时间,是特别值得的,如果你是个认真的开发者的话。
  本书组织结构
  这本书的目标是使你能够针对iOS手持设备和平板设备创建iOS应用程序。它假定你熟悉Objective-C语言但是对iOS开发一无所知(尽管第2章有新手训练营,但是你会发现,如果对这门语言更加熟悉的话,从这本书中学习知识会更加轻松)。每一章会介绍一些新概念,并且如果合适的话,这些概念会基于你在前面章节所学的知识。
  大多数章节除了它们的核心内容之外还涵盖了额外的材料。额外的材料未必适合特定章节的要点,但是创建应用程序时很重要。额外的材料向你展示如何使用特定的UI元素,提供一些技巧与窍门,解释代码实践,并且提供其他的有用信息。
  以下是每一章的摘要:
  第1章,“初识iOS SDK”——了解创建iOS应用程序时所用的工具、程序以及设备。你首先要安装Xcode,并且还要了解苹果开发者计划以及如何报名。最后两节在你设计应用程序时有用。其中第一节涵盖了手持设备的限制在各种各样的iOS技术中的体现,而最后一节介绍了型号之间的差异。
  第2章,“Objective-C新手训练营”——Xcode项目是包含应用程序的代码、资源和元信息的容器。在这一章,你将创建第一个项目。你还会得到对Objective-C—应用程序开发所用的语言——的一次快速复习。
  第3章,“故事板介绍”——应用程序的用户能够看到的只有界面。你可能用不可思议的代码来实现应用程序的行为,但是用户只能看到效果。在这一章,你要使用故事板,一种一次性看到应用程序的所有屏幕的方式,并开始创建应用程序界面。你要添加屏幕,并将它们连接到一起,并与代码连接起来。你从这一章得到的这些技巧是创建iOS应用程序的核心部分。
  第4章,“自动布局”——迄今为止,iOS手持设备有两种不同的屏幕尺寸,并且对于每种屏幕尺寸有两种不同的屏幕方向。支持4种不同的屏幕会很有挑战性。在这一章,你将学习并使用自动布局——苹果公司的基于约束的布局引擎,以更简单地支持多种屏幕尺寸。你甚至在屏幕旋转时使用它来修改布局。
  第5章,“本地化”——iOS设备至少在155个国家有售。当学习这一章时,你将创建一个支持三种语言以及很多国家的应用程序。你将基于第4章构建应用程序,使用自动布局来为不同的本地化字符长度调整界面元素。你还要实现特定于语言和国家的日期与时间格式,还有从左向右和从右向左的书写方向。
  第6章,“滚动”——在典型情况下,你想要显示的信息可能会超过手持设备的屏幕大小。有时,最好的导航方式是在内容中滚动。从最简单的用例开始,你使用自带的滚动视图UI元素,从简单地让屏幕弹跳,直到在多个元素中滚动。你可以添加拖动和缩放功能,并且基于滚动位置显示元素编号。
  第7章,“导航控制器I:层次结构和标签”——导航复杂信息可能非常有挑战性,特别是在手机的相对较小的屏幕上。iOS提供了导航控制器来简化这种工作。首先使用UINavigationController在信息层次结构中移动,然后使用更加先进的特性来提供进一步的定制。下一步,使用标签栏在不同类型的信息之间移动,并且学习如何操作故事版外的视图控制器。
  第8章,“表视图I:基础知识”——表视图是iPhone和iPad应用程序的重要部分。在学习它们如何工作之后,你将创建汽车表格,然后实现元素的添加和删除操作。你再深入一点,使用表格的一个变种来处理汽车详细信息。做这件事时,你使用选择器视图来表示日期,使用协议在场景之间传递数据和状态。
  第9章,“Core Data介绍”——Core Data实现了只需要做很少的工作即可使用完整的数据管理功能。在这一章,你将为应用程序创建Core Data模型,并且使用这些数据来表示汽车列表和汽车详细信息。下一步,使用自带的对象进一步简化管理表视图的工作。你还会学习将已有项目改为使用Core Data的办法,并且你会更加熟悉常见的错误。
  第10章,“表视图II:高级话题”——表视图有一些高级特性可以让应用程序锦上添花。在这一章中,你会实现不同的特性,包括自定义表单元、表格段、排序、内容索引以及搜索。你还将学习UISegmentedControl,调试的更多相关知识,以及使用#define的更好方法。
  第11章,“导航控制器II:拆分视图和iPad”——iPad应用程序通常需要与iPhone应用程序不同的设计方式。在本章,你将创建一个通用的应用程序,即在iPhone和iPad上都能运行的应用程序。你将使用iPad专用的UISplitViewController构建单独的界面。你将学习如何将iPhone视图适配到iPad,以及如何选择何时使用它们,何时创建新的东西。此外,你将实现单例,一种特殊的只能有一个实例的对象,你还将学习访问器方法的用处,并且实现自定义转场动画。
  第12章,“触摸基础”——用户所做的几乎所有事情都涉及一根或多根手指的手势。一些特性,如按钮,很容易添加触摸功能。其他控件需要更多工作。在这一章,你将学习手势识别器的基础知识,并且为汽车详情视图添加轻扫手势。然后你将更加深入,创建自定义的手势识别器。最后,你将添加一个可拖曳视图。
  第13章,“Block介绍”——从为视图添加动画到错误响应器,代码块是使用系统调用的一种重要工具。你将学习如何创建和使用代码块,以及用它们为视图增加脉动。你还会学习变量的作用域、只读变量与可修改变量。最后,你将用代码块代替协议。
  第14章,“Instruments和调试”——应用程序开发中有两个定律:最初的实现很少能像你所预期的那样执行,并且总是会有bug。在这一章中,首先使用测量仪器修复性能问题,测量仪器是一种检查性能、内存占用,以及应用程序中其他重要部分的工具。下一步,你将学习调试器中断点的一些高级特性。然后,你将同时使用这两种工具来解决最困难类型的bug。在这一章中,你还会学到一种发现和修复问题的过程,以及使用后台任务的一种方式。
  第15章,“部署应用程序”——在最后一章,你会将应用程序从你的机器搬到App Store。首先,你将创建所需的任意一种开发者证书,以及应用程序安全证书。你将添加图标和启动画面,然后学到对应用程序有用的额外功能,例如数据记录和bug报告,还有一些主要供应商。在简要地了解营销之后,你将使App Store准备好接受应用程序,构建并上传。本章以汇总继续创建给力iOS应用程序所需的资源来结尾。
  关于示例代码
  在学习本书的过程中,你将开发并改进代客泊车应用程序CarValet。CarValet应用程序被用作对你所学概念的实际实现。它并不是一个向大众发布的应用程序,尽管它可以作为这样一个应用程序的基础。
  任一涉及创建代码的章节通常至少包含两个项目:一个包含本书之前章节代码的起始项目,以及一个包含在这一章中所做修改的完结项目。对于本书大部分内容,你可以使用自己的某一章的完整项目作为下一章的起点。有一些地方不是这样的,在这些章节中会作出解释。
  除了最后的版本,示例代码项目使用相同的唯一包标识符:com.mauricesharp.CarValet。于是,你无法在虚拟机中或设备上同时安装多个版本的应用程序。如果想安装多个版本,只需将唯一的字符串添加到标识符的后边即可,例如com.mauricesharp.CarValet.CH05.portait。你将在第15章了解包标识符的重要性。
  你所写的所有代码和所学的概念适用于iOS 7或更新的系统版本。在iOS 7可用的第一天末尾,超过35%的现存设备已经在使用,这是有史以来最快的采用速度。这个份额只会增加。iOS的采用速度通常很快,一般会在几个月之内达到80%或更高。
  获得示例代码
  所有示例代码都放到了GitHub上,网址为https://github.com/mauricesharp/Learning- iOS-Development。这些代码按章节组织,大多数文件夹包含起点项目和完结项目。某些文件夹还包括中间步骤的项目,另一些项目还包含新的资源文件,比如图片。例如,以下是第6章的文件夹:
  CH06 CarValet Starter——第5章的完结项目,不包含第6章的任何修改。可使用这个项目,也可以使用自己第5章的末尾项目,作为第6章添加代码的起点。
  CH06 CarValet Finished——包含第6章所有改动的项目。可使用这个项目作为应做修改的参考,或者作为下一章的起点。
  CH06 Assets CarImages——一个额外的文件夹,包含本章中所做修改用到的图片资源。
  这些代码会按需更新。如果看到有些地方需要修改,有遗漏,甚至是实现某些功能的更好办法,尽管……
  贡献!
  示例代码从来都不是固定的目标,而是随着苹果公司更新SDK以及Cocoa Touch库而演变。参与进来吧。你可通过建议bug修复与更正来作贡献,也可扩充所提供的代码。GitHub允许你对仓库打分支,用你自己的调整和特性来扩展代码,并且可以在GitHub上使用Pull Request来将这些修改分享回主仓库。如果想到新的点子或方法,请告诉我们。我们乐于采纳对于示例代码仓库或本书下一版本的好建议。
  获取git
  可以使用git版本控制系统来下载本书源代码。git的OS X实现版本位于http://code.google.com/ p/git-osx-installer。OS X git实现同时包含命令行和GUI解决方案,可以四处搜寻最适合开发需要的版本。
  还有些第三方的git工具——有些免费,有些收费。以下两个最流行:
  SourceTree:一个免费的git hub客户端工具,网址为www.sourcetree app.com。
  Tower:一个付费的带有华丽UI的客户端,网址为www.git-tower.com。
  访问GitHub
  GitHub(http://github.com)是最大的git托管网站,包含超过150 000个公开仓库。它既提供免费的公开项目托管服务,又为私有项目提供付费托管选项。拥有可定制的网页界面,包含wiki托管和问题跟踪功能,并且着重于项目开发者的社交网络,是寻找新代码以及合作开发现存代码库的好去处。可以在http://github.com上注册免费账户。当这样做时,可以复制并修改此书的源代码仓库,或者创建自己的开源iOS项目并与他人分享。
  联系作者
  如果有关于本书的任何评论、问题或建议,请发Email给我,邮箱地址为learningios@ mauricesharp.com。
  本书使用iOS 7和Xcode的开发者预览版本编写而成。一些不同版本也被用到,但大多数是使用DP(Developer Preview,开发者预览版) 4。本书大部分内容都使用DP 6——正式版本发布之前的最后一个预览版本——进行了检验,但是一些早期代码仍然存在,特别是在CarValet示例代码中。请检查勘误表中的更新。
  现在阅读这些页面、写代码,并且完成挑战题。最后,你将懂得如何为手持设备与平板设备创建iOS应用程序。

目录
《ios开发完全上手——使用ios 7和xcode 5开发移动与平板应用》
第1章初识ios sdk      1
1.1安装xcode      1
1.2关于ios sdk      2
1.2.1免费获取的开发者计划      3
1.2.2ios开发者计划标准版(个人和公司)      4
1.2.3企业开发者计划      4
1.2.4大学开发者计划      5
1.2.5注册      5
1.2.6itunes u和在线课程      5
1.2.7ios sdk工具      5
1.3测试应用程序:模拟器和设备      7
1.3.1模拟器的局限      8
1.3.2接线      9
1.3.3对ios设备的考量      10
1.4理解设备型号间的差异      14
1.4.1屏幕尺寸      14
1.4.2摄像头      14
1.4.3音频      15
1.4.4电话通信      15
1.4.5core location和core motion之间的差异      15
1.4.6摇晃支持和接近      16
1.4.7处理器速度      16
1.4.8opengl es      17
1.4.9ios      17
1.5小结      18
第2章objective-c新手训练营      19
2.1使用模板创建hello world应用程序      19
2.1.1创建hello world项目      19
2.1.2xcode项目界面快速导航      23
2.1.3添加hello world标签      24
2.2objective-c新兵训练营      26
2.2.1objective-c编程语言      27
2.2.2类和对象      30
2.3carvalet应用程序:实现car类      35
2.3.1实现car方法      39
2.3.2属性      43
2.3.3创建并打印car对象      45
2.4属性:另外两个特性      46
2.5子类化和继承:挑战一下      49
2.6小结      52
2.7挑战题      53
第3章故事板介绍      55
3.1故事板的基础知识      55
3.2场景1:构建“add/view”场景      57
3.2.1在“add/view”场景中添加可视化元素      57
3.2.2添加“add/view”初始化行为                61
3.2.3加入显示汽车行为      69
3.2.4添加previous和next汽车按钮      72
3.3场景2:添加一个编辑器      75
3.3.1添加editor场景的可视化元素      77
3.3.2添加editor场景中的行为      78
3.3.3将一切都关联起来      82
3.3.4为何不用segue返回?      87
3.4改进故事板ⅰ      87
3.5改进故事板ⅱ      91
3.6小结      94
3.7挑战题      94
第4章自动布局      95
4.1自动布局的基础知识      95
4.2完美纵向显示      106
4.2.1以约束的方式思考      106
4.2.2完整的规定      107
4.3添加/查看汽车:设计和实现约束      108
4.3.1设计与实现添加汽车约束                118
4.3.2编辑汽车场景:初始的样子                123
4.4添加横向屏幕支持      123
4.5小结      142
4.6挑战题      143
第5章本地化      145
5.1本地化的基础知识      145
5.1.1重定向      146
5.1.2格式      148
5.2为本地化而准备应用程序      150
5.3德语国际化      162
5.3.1添加德语区域      162
5.3.2更改设备语言      163
5.3.3更新德语版的localizable.strings      164
5.3.4修改标签约束      166
5.3.5格式化和读取数字      169
5.4从右至左:阿拉伯语国际化      170
5.4.1添加阿拉伯语字符串      170
5.4.2让日期和数字能够工作      173
5.4.3文本对齐      175
5.5小结      176
5.6挑战题      177
第6章滚动      179
6.1滚动的基础知识      179
6.2弹跳滚动      180
6.3处理键盘      183
6.3.1添加滚动视图      183
6.3.2调整键盘大小      186
6.3.3添加调整大小      190
6.4在内容中滚动      190
6.4.1填充滚动视图      191
6.4.2添加分页      193
6.4.3添加缩放      194
6.4.4旋转      197
6.4.5这是什么车?      198
6.5小结      198
6.6挑战题      199
第7章导航控制器i:层次结构和标签      201
7.1导航控制器      201
7.1.1导航控制器类      203
7.1.2基于消息的导航      209
7.1.3少许颜色      210
7.2标签栏控制器      212
7.2.1标签栏的工作原理      213
7.2.2carvalet应用程序:添加标签栏      214
7.2.3carvalet:移动info      216
7.3小结      217
7.4挑战题      218
第8章表视图i:基础知识      219
8.1表视图介绍      219
8.2阶段i:替换add/view场景      226
8.2.1添加汽车查看单元格      228
8.2.2添加汽车      229
8.2.3删除汽车      230
8.3阶段ii:添加edit屏幕层次结构      233
8.3.1添加查看汽车场景      233
8.3.2用数据填充查看汽车场景                234
8.3.3编辑数据      236
8.3.4编辑年份      245
8.4小结      251
8.5挑战题      251
第9章core data介绍      253
9.1介绍core data      254
9.2将carvalet应用程序迁移到core data      255
9.2.1添加cdcar模型      256
9.2.2添加core data样板代码      258
9.2.3转换cartableview-controller      259
9.3更加简单的表视图:nsfetchedresultscontroller      265
9.3.1第1部分:集成nsfetched resultscontroller      265
9.3.2第2部分:实现nsfetched resultscontrollerdelegate      268
9.4小结      271
9.5挑战题      271
第10章表视图ii:高级话题      273
10.1自定义表视图单元格      273
10.2表格段和排序      276
10.2.1表格段的表头      277
10.2.2允许表格段的分组方式发生变化      279
10.3添加索引      283
10.4搜索表格      286
10.5小结      294
10.6挑战题      295
第11章导航控制器ii:拆分视图和ipad      297
11.1拆分视图控制器      297
11.2添加拆分视图控制器      299
11.2.1添加拆分视图控制器      301
11.2.2添加各部分之间的导航      304
11.3添加about视图      306
11.3.1创建mainmenuview controller      306
11.3.2美化菜单图片      308
11.4在纵向屏幕中访问菜单      310
11.5添加汽车图片      318
11.6新增cars      320
11.6.1使汽车表格适应ipad      322
11.6.2汽车详情控制器      324
11.6.3汽车详情控制器:ipad专属      326
11.7小结      340
11.8挑战题      341
第12章触摸基础      343
12.1手势识别基础      343
12.2在汽车之间轻扫移动      344
12.2.1在汽车之间移动      344
12.2.2调用nextorprevious car:      347
12.2.3添加动作选择器      348
12.2.4添加轻扫手势      350
12.2.5阻止识别器工作      351
12.3自定义识别器      352
12.3.1识别器的状态      352
12.3.2指定的识别器消息      354
12.4ipad返回home页      354
12.4.1创建返回手势识别器      355
12.4.2将手势识别器添加到当前的详情视图      357
12.4.3创建并响应手势识别器      358
12.5再添加一个手势      359
12.5.1拖动手势识别器      359
12.5.2添加支持拖动的出租车视图      360
12.6小结      361
12.7挑战题      361
第13章block介绍      363
13.1block基础      363
13.1.1声明block      363
13.1.2使用block      364
13.1.3编写block      364
13.2变量的作用域      369
13.3替换协议      371
13.3.1步骤(1):修改viewcartable viewcontroller      371
13.3.2步骤(2):更新cartable viewcontroller      372
13.3.3步骤(3):修改cardetail viewcontroller      373
13.3.4步骤(4):更新mainmenu viewcontroller      373
13.4小结      374
13.5挑战题      374
第14章instruments和调试      375
14.1instruments      375
14.1.1模板和仪器      377
14.1.2使用time profiler的示例      378
14.1.3关于仪器的最后一句话      382
14.2调试器      383
14.2.1调试仪表:微型instruments      384
14.2.2断点、动作、代码      386
14.3bug搜寻:instruments和调试器      387
14.3.1从zombies开始      388
14.3.2转移到调试器      390
14.4小结      391
14.5挑战题      392
第15章部署应用程序      393
15.1证书、概要和应用程序      393
15.1.1生成开发证书和profile      395
15.1.2应用程序id和provisioning      397
15.2预发行      403
15.2.1bug报告      403
15.2.2度量      404
15.2.3质量保证测试      405
15.2.4市场营销      408
15.3上传和发行      409
15.3.1软件详情      410
15.3.2上传到app store      414
15.3.3在发布之后需要注意的事情      418
15.4下一步去哪儿      419
15.4.1网页      420
15.4.2开发者小组与会议      420
15.4.3其他社交媒体      421
15.5小结      422
15.6挑战题      422
页: [1]
查看完整版本: 《iOS开发完全上手》——使用iOS 7和Xcode 5开发移动与平板应用