基本信息
【插图】

编辑推荐
Swift和Objective-C双语讲解
畅销书全新升级,全面涵盖iOS 8新特性、新变化
数百个项目案例+两个真实项目开发全过程
涵盖iOS平台架构设计、测试驱动开发、性能优化、版本控制和程序调试等
内容简介
作译者
智捷课堂创始人,国内知名iOS技术作家,iOS技术顾问,高级培训讲师,移动开发专家。担任51CTO社区iOS技术顾问,精通iOS、Android和Windows Phone及HTML5等移动开发技术。曾先后主持开发大型网络游戏《神农诀》的iOS和Android客户端开发,国家农产品追溯系统的iPad客户端开发,酒店预订系统的iPhone客户端开发,金融系统微博的iOS、Windows Phone 及Android客户端开发。在App Store上发布多款游戏和应用软件,擅长移动平台的应用和游戏类项目开发。长期为中国移动研究院、云南移动、东软、方正科技、惠普、NTT、深圳康拓普、上海财富168、天津港务局、福州软件园、广州软件园等企事业单位授课。除本书外,还著有《Swift开发指南》《iOS网络编程与云端应用最佳实践》《iOS传感器应用开发最佳实践》《iOS图形图像、动画和多媒体编程技术最佳实践》《iPhone与iPad开发实战——iOS经典应用剖析》《品味移动设计》《交互设计的艺术》《Android开发案例驱动教程》、《Android网络游戏开发实战》,以及《Cocos2d-x实战》系列丛书等。
目录
1.1 iOS概述 5
1.1.1 iOS介绍 5
1.1.2 iOS 8的新特性 5
1.2 开发环境及开发工具 6
1.3 本书中的约定 8
1.3.1 案例代码约定 8
1.3.2 图示的约定 9
1.3.2 方法命名约定 11
第2章 第一个iOS应用程序 12
2.1 创建HelloWorld工程 12
2.1.1 创建工程 13
2.1.2 Xcode中的iOS工程模板 18
2.1.3 应用剖析 20
2.2 HelloWorld工程中的故事板文件 22
2.2.1 故事板的导航特点 22
2.2.2 故事板中的Scene和Segue 24
2.3 应用生命周期 24
2.3.1 非运行状态——应用启动场景 27
2.3.2 点击Home键——应用退出场景 27
前言
内容和组织结构
本书是我们团队编写的iOS系列丛书中的一本,目的是使有Swift或Objective-C基础的程序员通过学习本书,从零基础学习如何在App Store上发布一款应用。全书共4部分。
第一部分为基础篇,共14章内容,介绍了iOS的一些基础知识。
第1章介绍了iOS的开发背景以及本书约定。
第2章使用故事板技术创建了HelloWorld,同时讨论了iOS工程模板、应用的运行机制和生命周期、视图的生命周期等,最后介绍了如何使用API帮助文档和官方案例。
第3章首先学习了视图和控件之间的关系以及应用界面的构建层次,然后介绍了标签、按钮、文本框和导航栏等基本控件。
第4章介绍了iOS 8多分辨率屏幕适配方法,其中涉及的技术主要是Auto Layout和Size Class。此外,还介绍了iOS屏幕的多样性、iOS屏幕布局相关的内容。
第5章首先向大家介绍了数据源协议和委托协议,然后介绍了高级视图:选择器和集合视图。
第6章探讨了表视图的组成、表视图类的构成和表视图的分类,使我们对表视图有了一个整体上的认识。接下来,介绍了如何实现简单表视图和分节表视图,以及表视图中索引、搜索栏和分组的使用,然后学习了如何对表视图单元格进行删除、插入、移动等操作,最后介绍了表视图UI设计模式方面的内容。
第7章讨论了如何判断应用是否需要一个导航功能,并且知道在什么情况下选择平铺导航、标签导航、树形结构导航,或者同时综合使用这3种导航模式。
第8章讨论了iOS开发中4种常用的设计模式,分别为单例模式、委托模式、观察者模式和MVC模式。在介绍每种设计模式时,我们按照问题提出、实现原理、应用案例的结构介绍了其适用情况、实现原理及其用法。
第9章首先介绍了iPhone和iPad设备使用场景上的差异,然后深入介绍了iPad专用API,包括UIPopover- Controller控制器和UISplitViewController控制器。
第10章介绍了iOS平台的分层架构设计技术,归纳了10种分层模式,并且重点实现了8种模式,每一种模式都有其应用场景。
第11章讨论了iOS本地数据持久化的问题。首先分析了数据存取的几种方式以及每种数据存取方式适合什么样的场景,然后分别举例介绍了每种存取方式的实现。
第12章介绍了设置和配置的概念,然后通过对二者差异的探讨,介绍了什么样的项目适合放在设置里,什么样的项目适合放在配置里。
第13章首先介绍了国际化的概念,接下来详细阐述了文本信息、xib及故事板、资源文件的国际化。
第14章首先介绍了访问通讯录所需要的框架,然后介绍了使用AddressBook框架如何读取联系人的信息,具体包括联系人记录、单值多值属性、图片属性的读取;接着介绍了如何使用该框架将联系人信息写入数据库,具体包括联系人的创建、修改和删除;最后介绍了如何使用AddressBook高级API实现选择联系人、显示和修改联系人以及创建联系人的操作。
第二部分为网络篇,共两章,介绍了iOS网络开发的相关知识。
第15章介绍了数据交换格式,其中XML和JSON是主要的方式。这里重点介绍了Web Service的访问以及MKNetworkKit框架。
媒体评论
——CocoaChina社区
“本书前两版均受到了51CTO社区广大iOS开发者和爱好者的好评和认可。与前两版不同的是,本书采用Swift和Objective-C两种语言进行介绍,讨论了iOS 8开发中常用的新特性、新功能。这本书不仅可以帮助iOS初学者迅速掌握iOS开发技能,而且可以帮助程序员系统全面地梳理知识,提高开发水平。在iOS开发的道路上,它定能助你一臂之力。”
——曹亚莉,51CTO博客总编,51CTO学院高级产品运营经理
“本书结合大量案例讲述了iOS应用开发的技巧,无疑是一本值得初学者认真阅读的从入门到精通的教材。第3版在前两版的基础上增加了iOS 8的新技术,对比介绍了Swift和Objective-C两种语言,使读者更容易掌握这两种语言的区别,同时突出了扁平化的设计理念。本书将是你踏入iOS殿堂的黄金阶梯!”
——9ria游戏开发者社区
“本书通俗易懂,全面覆盖了iOS 8的新特性及要点,并且对比讲解了使用Objective-C和Swift来实现iOS 8开发的差异。在第三篇中,作者总结并分享了以往开发过程中的经验和心得,很值得借鉴。相信本书对广大iOS开发者会有很大的帮助。”
——智捷课堂