为什么要写这本书
我在开始学习iOS开发之前一直从事着PHP和Flex的应用程序开发,因为四年前为苹果移动设备开发应用程序至少在国内毕竟还不是很热门。当时的互联网开发大多还是围绕着Web 2.0理念的开发以及各种社交网站上的Flash交互游戏开发。记得一次在回家的路上,我静静地思考这样一个问题:从现在开始,我是否要放弃多年驾轻就熟的语言,转而去一个全新的开发领域呢?挑战肯定是有的,但是挑战与机遇共存。就目前情况而言,iOS程序员的数量远远低于传统C、C++的人数。不仅如此,在笔者参加过的多次Adobe***大会上,与会人员的数量和那些人的热情是大家可以想象的(尽管笔者还没有真正看到过一款使用Flash或Flex开发的商业应用)。众所周知,虽然目前iOS设备在国内大量普及(不管是个人,还是机关、单位),但是真正符合国人需求的应用并不是很多,尤其是符合某一领域的商用、垂直化应用还远远不够,这就为iOS开发团队带来了巨大的机遇。因此在经过一段时间的学习和开发实践以后,便有了写这本书的想法,主要想通过本书让更多希望从事iOS开发的程序员尽快入门,同时为将来的创业打下良好的基础。
2012年9月19日,苹果第六代手机操作系统iOS 6.0正式发布,iOS 6 SDK(Software Development Kit)也随之放出,该SDK为我们进行应用程序开发提供了更多的功能和特性。其中包括全新的苹果地图,Siri发送短信、预约会议,与朋友分享照片流,Passbook优惠券处理和iPhone全新呼叫等功能。如果说从iOS 1.0到iOS 4.0苹果更多的是做系统深度开发,那么从iOS 5.0到iOS 6.0的时代就是广度的开发,与此同时操作系统的容量也在不断的变大。
截至目前,苹果对于iOS操作系统的更新和升级还在继续,这也就代表着我们对Objective-C和iOS开发的学习始终不会停止。新的iOS硬件设备可能会带动更多更好的应用程序出现,而这些应���程序的背后将是一个巨大的财富。希望大家一切从用户的角度出发,一步一个脚印去做,*终实现自己的梦想。
本书特色
本书以构建一个MyDiary项目的实践案例贯穿全书,将所有知识点融入到实践当中,使大家真正理解和掌握如何通过Xcode SDK和Objective-C语言来开发iOS应用程序。
在基础篇的学习中,可以了解到什么是iOS,什么是Xcode。作为一名iOS***需要什么软、硬件条件。然后就是如何通过Xcode和Objective-C来搭建一个能够记录文本、图片、声音,查看设备当前位置的MyDiary项目。还结合该项目讲授了如何使用表格来组织信息。
在**篇中,大部分的内容都是针对之前所学内容的深入和扩展。包括如何组织表格,如何处理设备的旋转,多语言和地区的处理以及如何操作日历等。
读者对象
本书适合具备以下几方面知识和硬件条件的群体阅读。
面向对象的开发经验,熟悉类、实例、方法、封装、继承、重写等概念。
有Objective-C或C、C++的开发经验。
有MVC设计模式开发经验。
有简单的图像处理的经验。
有一台Inter架构的Mac电脑(MacBook Pro、MacBook Air、Mac Pro或Mac Mini)。
如果加入了iOS***计划,还可以准备一台iOS移动设备。
如何阅读本书
本书逻辑上分为两个部分:
第1章到第13章为基础部分,通过构建一个MyDiary iPhone应用程序项目,向大家介绍了如何使用Xcode SDK开发工具及通过Objective-C语言编写一个可以记录文本、保存图片和声音的App。
第14章到第22章为**部分,着重讲解iOS开发中可能会用到的**功能,包括视图的旋转和滚动处理、表格的**操作、多语言环境等。
本书自始至终都通过MyDiary iPhone应用程序这个实际项目来展开的,所以建议初学者从第1章开始学习,以达到良好的学习效果。
勘误和支持
由于作者的水平有限,编写时间仓促,书中难免会出现一些错误或不准确的地方,恳请读者批评指正。书中的全部源文件可以从华章网站下载。如果你有更多的宝贵意见,也欢迎发送邮件至邮箱liuming_cn@qq.com,期待能够得到你们的真挚反馈。
致谢
首先要感谢伟大的可以改变这个世界的Steven Jobs,他的精神对我产生了非常大的影响。
感谢机械工业出版社华章公司的编辑杨福川老师,在这一年多的时间中始终支持我的写作,他的鼓励和帮助引导我顺利完成全部书稿。
*后感谢我的爸爸、妈妈、老婆、乐乐、张燕、赵霞、秦琼、王艳标、杨晓龙、刘天翔、梁涛,感谢他们对我的支持与帮助,并时时刻刻为我灌输着信心和力量!
谨以此书献给我*亲爱的家人,以及众多热爱iOS的朋友们! ……