iOS软件开发兵法
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

前言

“我相信,苹果的未来将更加光明,更具创造力。我期待未来苹果的成功,也将为此尽自己的绵薄之力。”这是乔布斯曾在辞职信中写到的。

虽然他已不能亲力亲为,但依然是我们这些热衷于iOS的IT工人最好的导师,是他一生的追求和苹果帝国所缔造的辉煌牵引我们孜孜不倦地探索希望之光。

“求知若饥,虚心若愚”,这是2005年乔布斯在斯坦福大学毕业典礼上的演讲总结。

正是这样一句话让我刻骨铭心,三日必省吾身,从而深深扎入iOS的学习、研究、探索之路。

如今,若有所获;但更愿与众同享,故与同事合著此书。

如果你是一个开发者,那请关注iOS开发。

2012 年苹果第二财季(2012 年第一季度)财报中显示,苹果 iOS 设备累计销量已达3.65亿部,仅第二财季苹果就销售了3510万部iPhone。苹果应用商店(App Store)中的应用已超过60万个,其中有20万个iPad应用。截至第二财季,苹果已经向iOS应用开发者分成达到了50亿美元。

iPhone刚推出时,苹果并没有提供App Store,直到2008年7月发布了iPhone 3G(iPhone OS 2.0.1)后才开始支持App Store。

2011年1月22日,苹果宣布App Store迎来了它的第100亿次下载;2012年3月3日,苹果宣布App Store迎来了它的第250亿次下载。

希望你也从50亿美元中得到几美分,希望你开发的应用程序下载数也被统计到250亿次中。如果没有,不妨从现在开始与我一起关注、学习、研究iOS。

什么是iOS

iOS是由苹果公司开发的操作系统。最初是设计给iPhone使用的,后来陆续套用到iPod touch、iPad以及Apple TV产品上。就像其基于的Mac OS X操作系统一样,它也是以Darwin为基础的。原本这个系统名为“iPhone OS”,直到2010年6月7日WWDC大会上宣布改名为“iOS”。

为什么推荐你购买本书

本书通过大量的实例,非常详细地介绍了如何开发iOS应用程序,从计算器应用到游戏开发。这些例子覆盖了iOS的大部分特性,并展示如何控制这些特性,学会如何与其交互。

我们相信,学习本书后,读者可以开发出非常专业的iOS应用程序。

本书的教学案例是基于iOS 5开发的,当然也添加了一些有关iOS 6最新功能的讲解。

学习本书需要准备什么

在开始学习本书之前,需要一些准备工作。读者需要有一台Mac电脑,并下载安装Xcode(本书例子使用Xcode 4.3进行开发),读者可以在Xcode自带的iOS模拟器中调试应用程序。如果读者想在真实的iOS设备中调试应用程序,还需要两个条件。

一是注册为iOS开发者。读者可以通过本书的“第12章iOS应用程序发布与管理”了解如何注册。

二是有一部iPhone,或者iPad。如果开发的应用程序不涉及电话、短信等功能,也可以使用iPod touch进行开发。

需要了解哪些编程知识

假定读者已经学习了C或者C++,或者了解了其他的编程语言,具备了一定的程序设计经验。本书并不是iOS应用开发语言Objective-C的学习手册,而是通过诸多例子,帮助读者学习使用Objective-C开发应用程序。因此,希望读者在学习本书时,先熟悉Objective-C;同时对开发平台如Mac、iPhone、iPad有基本的了解,比如使用操作等。

如果读者不熟悉 Objective-C,则可以阅读《Objective-C 基础教程》(作者是 Mark Dalrymple和Scott Knaster,这两人是Mac编程开发专家。

也可以到苹果官方的 iOS Developer Library 学习 Objective-C,地址是:https://developer.apple.com/library/ios/documentation/Cocoa/Conceptual/ObjectiveC/。这份文档有PDF电子版可供下载。

在学习本书的过程中,我们强烈建议读者把iOS Developer Library收藏到浏览器书签中,以便快速查看各种资料,比如技术文章、教程、实例(包括代码下载)、类的参考手册、开发向导等。地址是:https://developer.apple.com/library/ios/navigation/。

怎样读本书

本书主要以案例为主,让大家快速掌握iOS开发技术,在案例过程中穿插知识点、说明、小技巧以及示例代码。

知识点

与程序相关的知识内容。

说明

对当前操作或代码的扩展解释,以及学习过程中容易忽视和需要注意的地方。

小技巧

介绍开发工具、运行环境等常用操作技巧。

示例代码

使用Courier New字体表示。如果有粗体代码,则表示是新添加或者有修改的。

    @interface WordViewController : UIViewController<UISearchBarDelegate>
    {
        UISearchBar *wSearchBar;
        UIWebView *wWebView;
    }
    @property (nonatomic, retain) IBOutlet UIWebView *wWebView;
    @property (nonatomic, retain) IBOutlet UISearchBar *wSearchBar;

全部的实例代码都可以在http://app.hxsd.com/iosbook/中找到。

学习过程中遇到问题,请联系我们一起解决

尽管我们非常努力,仍难免有小的差错。为此,当您阅读本书时遇到任何问题,都可以通过下面的方式联系我们。同样,关于iOS应用程序开发的技术问题,也可以与我们交流。我们时刻记着:您的支持将是我们最大的动力。

联系方式:iosbook@hxsd.com

致谢

本书在编写过程中,得到了李才应、邢富颖、陈柳岐、兰志炎等的大力支持,一起参与编写的同事都为此花费了大量的时间,在此表示感谢。同样也感谢电子工业出版社胡辛征老师、葛娜、张玲等编辑和评审,没有他们,书中的语言不可能如此的优美。最后要感谢那些为我们提出宝贵意见的朋友们。

“求知若饥,虚心若愚”—乔布斯

感谢您选择本书。

编 者