技术教育社区
www.teccses.org

iOS实战入门与提高卷-(Swift版)

封面

作者:关东升著

页数:469

出版社:清华大学出版社

出版日期:2015

ISBN:9787302405948

电子书格式:pdf/epub/txt

内容简介

本书是智捷课堂团队编写“iOS实战”系列图书中的一本,全书分为16章,系统介绍了iOS应用开发的理论与技术。全书内容包括: 第1章开始,介绍了iOS开发背景知识及本书约定; 第2章介绍了Cocoa Touch MVC设计模式; 第3章介绍了视图及其相关知识; 第4章介绍了表视图; 第5章介绍了界面布局与Auto Layout技术; 第6章介绍了屏幕适配与Size Class技术; 第7章介绍了应用导航模式; 第8章介绍了手势识别; 第9章为项目实战——编写自定义控件PopupControl; 第10章介绍了音频和视频多媒体开发; 第11章介绍了图形图像开发; 第12章介绍了数据存储; 第13章介绍了网络数据交换格式; 第14章介绍了REST Web Service; 第15章介绍了 Web Service网络通信架构设计; 第16章介绍了 iOS敏捷开发项目实战——价格线酒店预订iPhone客户端开发。 本书适合作为从事iOS应用开发的软件工程师的参考用书,也可作为计算机科学与技术、软件工程等专业的移动开发类课程的教学用书。

作者简介

关东升,国内知名iOS技术作家,iOS技术顾问,高级培训讲师,移动开发专家。担任51CTO社区iOS技术顾问,精通iOS、Android和Windows Phone及HTML5等移动开发技术。曾先后主持开发大型网络游戏《神农诀》的iOS和Android客户端开发,国家农产品追溯系统的iPad客户端开发,酒店预订系统的iOS客户端开发,金融系统的iOS、Windows Phone 及Android客户端开发。在App Store上发布数款游戏和应用软件,擅长移动平台的应用和游戏类项目开发。长期为中国移动研究院、云南移动、东软、方正科技、大唐电信、中石油、深圳康拓普、上海财富168、天津港务局等企事业单位授课。著有、《iOS开发指南——从零基础到App Store上架》、《交互设计的艺术——iOS 7拟物化到扁平化革命》、《Cocos2d-x实战:C++卷》、《Cocos2d-x实战:Lua卷》、《Cocos2d-x实战:工具卷》、《Cocos2d-x实战:JS卷——Cocos2d-JS开发》等专业图书。

本书特色

《iOS实战:入门与提高卷(Swift版)》一书是国内著名的移动开发教育机构智捷课堂首席专家关东升编写iOS系列丛书中的一本。该丛书分别如下:
《iOS实战: 入门与提高卷(Swift版)》
《iOS实战: 图形图像、动画与多媒体卷(Swift版)》
《iOS实战: 传感器卷(Swift版)》
《iOS实战: 苹果“生态圈”编程卷(Swift版)》
《iOS实战: Apple Watch卷(Swift版)》《iOS实战:入门与提高卷(Swift版)》分为16章,是国内介绍iOS开发全面的图书之一。全书各章内容如下:
第1章 开始。 iOS知识开发背景介绍以及本书约定介绍。并且创建了一个iOS应用程序——HelloiOS,通过HelloiOS讨论了iOS工程模板、应用的运行机制和生命周期、视图器的生命周期。最后介绍API帮助文档和官方案例的使用。
第2章 Cocoa Touch MVC设计模式。首先介绍了Cocoa Touch MVC模式,然后介绍了视图控制器和视图基础知识,以及界面构建技术。
第3章 视图。首先介绍了控件与动作事件、视图与输出口、视图与委托协议。然后介绍了标签、按钮、文本框、文本视图、Web视图、警告框、操作表、工具栏和导航栏等基本控件。
第4章 表视图。首先介绍了表视图的组成、表视图类的构成、表视图的分类以及表视图的两个重要协议。然后讨论了如何实现简单表视图和分节表视图,以及表视图中索引、搜索栏、分组的用法,最后讨论了表视图单元格删除和插入等操作。
第5章 界面布局与Auto Layout技术。首先介绍界面布局和Auto Layout技术,最后介绍了Auto Layout技术解决界面布局等问题。
第6章 屏幕适配与Size Class技术。首先介绍了iOS屏幕及三种屏幕分辨率。然后介绍了Size Class技术解决屏幕适配问题。
第7章 应用导航模式。如何判断应用是不是需要一个导航功能,并且知道在什么情况下选择平铺导航、标签导航、树形结构导航中的哪一种或者同时综合使用3种导航模式。
第8章 手势识别。通过对本章的学习,读者可以了解手势的种类,掌握手势识别器、触摸事件和手势识别过程等。
第9章 项目实战——编写自定义控件PopupControl。通过一个自定义控件PopupControl项目,介绍了自定义控件地开发过程,以及静态链接库、动态链接库、框架和工作空间等概念。
第10章 音频和视频多媒体开发。本章介绍了音频播放与录制,以及视频播放与录制。
第11章 图形图像开发。首先了解UIImage、CIImage和CGImage对象的不同,他们的应用的场景。然后介绍了Core Image框架API以及滤镜的使用。
第12章 数据存储。讨论 iOS本地数据存储的问题。首先分析了数据存取的几种方式以及每种数据存取方式适合什么样的场景,然后分别举例介绍了每种存取方式的实现。还介绍了iOS平台的分层架构设计技术。这些架构设计模式将贯穿全书。
第13章 网络数据交换格式。介绍了数据交换格式,其中XML和JSON是主要的方式。
第14章 REST Web Service。介绍了REST Web Service。还重点介绍了MKNetworkKit框架。
第15章 Web Service网络通信架构设计。通过重构MyNotes应用,把MyNotes应用的数据由原来的本地存储变成云存储。在这个过程中,介绍了移动网络通信应用中分层架构设计的必要性和重要性。
第16章 iOS敏捷开发项目实战——价格线酒店预订iPhone客户端开发。介绍了完整的iOS应用分析设计、编程、测试和发布过程,开发过程采用敏捷开发方法。敏捷开发方法非常时候与iOS开发,广大读者能够认真学习。开发采用的架构是分层设计的,对于iOS开发也是非常重要的。

目录

第1章开始1.1iOS概述1.1.1iOS介绍1.1.2iOS 8新特性1.2开发环境及开发工具1.3本书约定1.3.1实例代码约定1.3.2图示约定1.3.3方法命名约定1.3.4构造器命名约定1.4创建HelloiOS工程1.4.1创建工程1.4.2Xcode中的iOS工程模板1.4.3应用剖析1.4.4应用生命周期1.4.5Xcode中的Project和Target1.4.6常用的产品属性1.5iOS API简介1.5.1API概述1.5.2如何使用API帮助1.6小结第2章Cocoa Touch MVC设计模式2.1MVC模式2.1.1MVC模式概述2.1.2Cocoa Touch MVC模式2.2视图控制器2.2.1视图控制器种类2.2.2视图控制器生命周期2.3视图与UIView2.3.1UIView继承层次结构2.3.2视图分类2.3.3应用界面的构建层次2.4界面构建技术2.4.1使用故事板2.4.2使用Xib文件2.4.3使用代码2.5小结第3章视图3.1控件与动作事件3.1.1按钮3.1.2定义动作事件3.2视图与输出口3.2.1标签3.2.2定义输出口3.3视图与委托协议3.3.1委托设计模式3.3.2实例: TextField委托协议3.3.3键盘的打开和关闭3.3.4键盘的种类3.4关闭和打开键盘通知3.4.1通知机制3.4.2实例: 关闭和打开键盘3.5Web视图3.5.1UIWebView类3.5.2WKWebView类3.6警告框3.7操作表3.8工具栏3.9导航栏3.10小结第4章表视图4.1表视图中概念4.1.1表视图组成4.1.2表视图相关类4.1.3表视图分类4.1.4单元格组成和样式4.1.5数据源协议与委托协议4.2简单表视图4.2.1创建简单表视图4.2.2自定义单元格4.2.3添加搜索栏4.3分节表视图4.3.1添加索引4.3.2分组4.4删除和插入单元格4.5小结第5章界面布局与Auto Layout技术5.1iOS界面布局UI设计模式5.2静态表与表单布局5.3集合视图5.3.1集合视图介绍5.3.2实例: 奥运会比赛项目5.3.3添加集合视图控制5.3.4添加集合视图单元格5.3.5数据源协议与委托协议5.4Auto Layout布局5.4.1Auto Layout约束管理5.4.2实例: Auto Layout布局5.5小结第6章屏幕适配与Size Class技术6.1iOS屏幕6.1.1iOS屏幕介绍6.1.2iOS的三种分辨率6.1.3判断iPhone屏幕尺寸6.2Size Class技术6.2.1Interface Builder中使用Size Class6.2.2Size Class的九宫格6.2.3实例: 使用Size Class6.3小结第7章应用导航模式7.1导航概述7.2导航的“死胡同”——模态窗口7.3平铺导航7.3.1平铺导航概述7.3.2使用资源目录管理图片7.3.3屏幕滚动视图重要的属性7.3.4分屏导航实现7.4标签导航7.4.1标签导航实例7.4.2标签导航实现7.5树形结构导航7.5.1树形结构导航实例7.5.2树形结构导航实现7.6组合使用导航模式7.6.1组合导航实例7.6.2组合导航实现7.7小结第8章手势识别8.1手势种类8.2使用手势识别器8.2.1视图对象与手势识别8.2.2手势识别状态8.2.3检测Tap(单击)8.2.4检测Long Press(长按)8.2.5检测Pan(平移)8.2.6检测Swipe(滑动)8.2.7检测Rotation(旋转)8.2.8检测Pinch(手指的合拢和张开)8.2.9检测Screen Edge Pan(屏幕边缘平移)8.3触摸事件与手势识别8.3.1事件处理机制8.3.2响应者对象与响应链8.3.3触摸事件8.3.4手势识别本章小结第9章项目实战——编写自定义控件PopupControl9.1选择器9.1.1日期选择器9.1.2普通选择器9.1.3数据源协议与委托协议9.2自己的选择器9.2.1自定义选择器控件需求9.2.2静态链接库9.2.3框架9.2.4使用工作空间9.3实现自定义选择器9.3.1创建框架工程9.3.2创建自定义选择器控制器9.3.3使用Xib构建界面9.3.4编写选择器控制器委托协议代码9.3.5编写选择器控制器代码9.4实现自定义日期选择器9.4.1创建自定义日期选择器控制器9.4.2使用Xib构建界面9.4.3编写日期选择器控制器委托协议代码9.4.4编写日期选择器控制器代码9.5测试自定义控件9.5.1创建工作空间9.5.2测试程序工程9.6小结第10章音频和视频多媒体开发10.1音频开发10.1.1音频文件简介10.1.2音频API简介10.1.3音频播放10.1.4音频录制10.2视频开发10.2.1视频文件简介10.2.2视频播放10.2.3视频录制本章小结第11章图形图像开发11.1使用图像11.1.1创建图像11.1.2实例: 从设备图片库选取或从照相机抓取11.2使用Core Image框架11.2.1Core Image 框架API11.2.2滤镜11.2.3实例: 旧色调和高斯模糊滤镜本章小结第12章数据存储12.1数据存储概述12.1.1沙箱目录12.1.2数据存储方式12.2分层架构设计12.2.1低耦合企业级系统架构设计12.2.2iOS分层架构设计12.3实例: MyNotes应用12.3.1采用纯Swift语言实现12.3.2采用Swift调用Objective睠混合搭配实现12.4属性列表12.5使用SQLite数据库12.5.1SQLite数据类型12.5.2创建数据库12.5.3查询数据12.5.4修改数据12.6小结第13章网络数据交换格式13.1XML数据交换格式13.1.1XML文档结构13.1.2XML文档解析与框架性能13.1.3实例: MyNotes应用XML13.2JSON数据交换格式13.2.1JSON文档结构13.2.2JSON数据编码/解码与框架性能13.2.3实例: MyNotes应用JSON解码13.3小结第14章REST Web Service14.1REST Web Service通信技术基础14.1.1HTTP协议14.1.2HTTPS协议14.2使用苹果网络请求API14.2.1同步请求方法14.2.2异步请求方法14.2.3实例: MyNotes插入、修改和删除功能实现14.3实例: 改善MyNotes用户体验14.3.1使用下拉刷新控件14.3.2使用网络活动指示器14.4使用网络请求框架MKNetworkKit14.4.1安装和配置MKNetworkKit框架14.4.2实现GET请求14.4.3实现POST请求14.4.4下载数据14.4.5上传数据14.5小结第15章Web Service网络通信架构设计15.1iOS Web Service网络通信应用的分层架构设计15.2基于委托模式实现15.2.1网络通信与委托模式15.2.2使用委托模式实现分层架构设计15.2.3类图15.2.4时序图15.2.5数据持久层重构15.2.6业务逻辑层的代码实现15.2.7表示层的代码实现15.3基于观察者模式的通知机制实现15.3.1观察者模式的通知机制回顾15.3.2异步网络通信中通知机制的分层架构设计15.3.3类图15.3.4时序图15.3.5数据持久层的重构15.3.6业务逻辑层的代码实现15.3.7表示层的代码实现15.4小结第16章iOS敏捷开发项目实战——价格线酒店预订iPhone客户端开发16.1应用分析与设计16.1.1应用概述16.1.2需求分析16.1.3原型设计16.1.4架构设计16.2iOS敏捷开发16.2.1敏捷开发宣言16.2.2iOS可以敏捷开发?
16.2.3iOS敏捷开发一般过程16.3任务1: 创建工作空间16.4任务2: 业务逻辑层开发16.4.1迭代2.1 编写搜索酒店的业务逻辑层类16.4.2迭代2.2 编写房间查询业务逻辑类16.5任务3: 表示层开发16.5.1迭代3.1 根据原型设计初步设计故事板16.5.2迭代3.2 搜索酒店模块16.5.3迭代3.2.1 选择城市视图控制器16.5.4迭代3.2.2 选择关键字视图控制器16.5.5迭代3.2.3 选择价格和日期选择器16.5.6迭代3.2.4 酒店搜索视图控制器16.5.7迭代3.2.5 酒店搜索列表视图控制器16.5.8迭代3.3 房间查询模块16.6小结

下载地址

立即下载

(解压密码:www.teccses.org)

Article Title:《iOS实战入门与提高卷-(Swift版)》
Article link:https://www.teccses.org/561539.html