iOS8Swift编程指南 pdf下载pdf下载

iOS8Swift编程指南百度网盘pdf下载

作者:
简介:本篇提供书籍《iOS8Swift编程指南》百度网盘pdf下载
出版社:电子工业出版社京东自营官方旗舰店
出版时间:2015-06
pdf下载价格:0.00¥

免费下载


书籍下载


内容介绍

编辑推荐

适读人群 :本书适合所有层次的iOS开发者阅读、参考,论你是否具有Objective-C编程经验。
  

CSDN排名141博主力作!点击近200万次博客集成之作!
  Swift和iOS 8“合二为一”——实战性强,拒绝泛泛,直逼症结,真正的经验之作!
  本书创新性地将语言和框架结合起来介绍。
  本书主要内容包括:Swift语言的基本特性,iOS 8对UI方面的改善,App扩展,包括今日、分享、动作、照片编辑、文档提供者、键盘,增强框架,包括CloudKit、Photos、HandOff和WebKit,以及Live Rendering和Visual Effects等。


  


  

海报:
  


  

内容简介

  《iOS 8 Swift编程指南》创新性地将语言和框架结合起来介绍。全书分为两部分:一部分是 Swift 语言介绍,共4章;第二部分则是iOS 8特性的介绍,从App开发者的角度阐述Swift语言在新SDK上的实际应用。本书在介绍iOS 8每个特性的过程中,配以丰富的Swift代码案例,以此让读者在学习iOS 8的同时,积累大量的 Swift 编码经验。
  《iOS 8 Swift编程指南》适合所有层次的iOS开发者阅读、参考,无论你是否具有Objective-C编程经验。

作者简介

  杨宏焱,男,曾任某大型国企高级软件工程师、移动开发领域知名专家。有多年 j2ee 编程经验,熟悉 SqlServer、Oracle 数据库及 T-SQL、PL/SQL 编程。2009年开始专注于 iOS 开发,精通Objective C 和 Swift 本地App开发,活跃于CSDN、CocoaChina等多个开发者社区,CSDN移动开发博客专家(博客地址:http://blog.csdn.net/kmyhy)、CSDN学院讲师。

目录

第一部分 Swift语言编程指南
第1章 Swift初见
1.1 什么是Swift
1.2 为什么要学习Swift
1.3 Objective-C程序员学习Swift需要特别关注的地方
1.3.1 类型推断与类型安全
1.3.2 泛型
1.3.3 数组和字典
1.3.4 字符串
1.3.5 switch语句
1.4 关于Swift初学者的一些问题
1.4.1 从哪里获得Swift
1.4.2 是否需要先学Objective-C,再学Swift
1.4.3 "老鸟"们学习Swift是否会更轻松
1.4.4 开发iOS 8和OS X Yosemite程序只能用Swift吗
1.4.5 Swift是否能在当前的iOS和OS X版本上工作
1.4.6 什么是Playground
1.4.7 关于NDA
1.4.8 有Swift能做到而Objective-C法做到的吗?反过来说呢
1.4.9 某些API是否法被Swift调用
1.4.10 在Playground中,如何以图表方式查看变量值
1.4.11 如何打开REPL
1.4.12 Swift如何调用Objective-C代码或第三方库
1.4.13 Swift数组只能存储同一种类型的数据吗
1.4.14 字典是否也和数组一样是强类型的
1.4.15 Swift中有类似于Objective-C中的id吗
1.4.16 在 Swift中,如何自省
1.4.17 在Swift中如何使用GCD
1.4.18 Objective-C中提供的Internationalization宏是否仍然可用
1.4.19 仍然需要注意持有循环吗
1.4.20 何时使用strong、weak以及unowned
第2章 Swift语法基础
2.1 Playground
2.2 常量、变量、字符串
2.2.1 常量
2.2.2 变量
2.2.3 分号
2.2.4 字符串
2.2.5 字符串插值和运算
2.3 简单类型和类型推断
2.3.1 数值类型
2.3.2 类型转换
2.3.3 布尔类型
2.3.4 区间
2.3.5 元组
2.4 流程控制
2.4.1 for循环
2.4.2 while语句
2.4.3 if语句
2.4.4 switch语句
第3章 结构和类
3.1 可空类型
3.1.1 认识可空
3.1.2 声明可空
3.1.3 可空类型与非可空类型的转换
3.2 集合
3.2.1 数组
3.2.2 字典
3.3 枚举
3.3.1 定义枚举时填充原始值
3.3.2 使用其他类型
3.3.3 不填充原始值
3.3.4 联合
3.4 结构和类综述
3.4.1 属性
3.4.2 构造器
3.4.3 实例方法
3.4.4 类方法
3.4.5 下标方法
3.4.6 继承
第4章 Swift函数式编程
4.1 函数
4.1.1 函数的定义
4.1.2 外部参数名
4.1.3 简化外部参数名
4.1.4 默认值
4.1.5 可变参数
4.1.6 变量参数和输出参数
4.1.7 用函数作为参数
4.1.8 函数作为返回值
4.1.9 嵌套函数
4.2 闭包
4.2.1 声明闭包
4.2.2 匿名闭包
4.2.3 尾末闭包
4.2.4 值捕获
4.3 协议
4.3.1 协议的声明
4.3.2 实现协议
4.3.3 协议是一种类型
4.3.4 组合协议
4.4 扩展
4.4.1 声明扩展
4.4.2 扩展和协议
4.5 泛型
4.5.1 泛型函数
4.5.2 泛型和协议
4.5.3 泛型约束
4.5.4 泛型类型
4.6 可空链
4.6.1 ?操作符
4.6.2 ??操作符
第二部分 iOS 8 SDK
第5章 故事板与自适应布局
5.1 自适应布局入门
5.1.1 自适应布局的4个概念
5.1.2 Universal故事板
5.1.3 Size类
5.1.4 自适应字体
5.1.5 设备相关图片
5.2 自适应布局进阶
5.2.1 自适应单元格
5.2.2 自动安装视图
5.2.3 UITraitCollection类
5.2.4 覆盖Size类
5.2.5 Size相关图片
5.2.6 显示/隐藏导航栏
5.2.7 UIAppearance和Size类
第6章 UISplitViewController及旋屏
6.1 创建UISplitViewController应用
6.2 在iPhone App中使用UISplitViewController
6.2.1 创建Detail默认视图
6.2.2 在iPhone中展开UISplitViewController
6.2.3 记住用户选择
6.2.4 单元格指示器
6.2.5 对iPad进行适应
6.3 旋屏
6.3.1 旧的旋屏方法被废弃
6.3.2 自定义旋屏效果
6.3.3 单元格自适应大小
6.3.4 iPad旋屏
6.3.5 自适应的UILabel
第7章 视图控制器的呈现
7.1 初始项目
7.2 内置的Presentation Controller
7.2.1 UIAlertController
7.2.2 UIPopoverPresentationController
7.2.3 UISearchController
7.3 自定义UIPresentationController
7.3.1 Presented控制器和Presenting控制器
7.3.2 创建基本的PresentationController
7.3.3 自定义转换动画
7.3.4 高级定制
第8章 今日扩展
8.1 App扩展介绍
8.1.1 App扩展的类型
8.1.2 理解App扩展
8.2 今日扩展综述
8.2.1 介绍今日扩展
8.2.2 WeatherWidget示例
8.2.3 讨论
第9章 分享扩展
9.1 案例项目:SinaWeiboShare
9.1.1 实现容器App
9.1.2 创建分享扩展
9.2 讨论
9.2.1 配置SLComposeSheetConfigurationItem
9.2.2 分享其他文件
第10章 动作扩展
10.1 案例项目:SearchInICIBA
10.1.1 实现容器App
10.1.2 创建动作扩展
10.2 讨论
第11章 照片编辑扩展
11.1 案例项目:PhotoVintage
11.1.1 实现容器App
11.1.2 实现照片编辑扩展
11.2 讨论
第12章 文档提供者扩展
12.1 准备
12.1.1 工作机制
12.1.2 文档提供者扩展支持的4种操作
12.2 Bmob云服务
12.2.1 注册Bmob
12.2.2 创建应用
12.2.3 获取App Key
12.2.4 Bmob SDK
12.3 开始
12.3.1 添加扩展App
12.3.2 配置Info.plist和entitlements
12.4 加入Bmob SDK框架
12.4.1 添加CocoaPods框架
12.4.2 桥接头文件
12.4.3 上传图片到Bmob
12.4.4 实现Document Picker
12.4.5 实现宿主App
12.4.6 实现File Provider
12.5 讨论
第13章 键盘扩展
13.1 准备
13.2 键盘扩展的限制
13.3 值得信任
13.4 网络访问
13.5 开始
13.5.1 创建键盘扩展
13.5.2 显示键盘
13.5.3 设计按钮及布局
13.6 实现KeyboardViewController
13.6.1 创建连接
13.6.2 实现按键处理
13.6.3 大小写转换
13.6.4 切换符号集
13.6.5 按键动画
13.6.6 键盘最终运行效果
13.7 讨论
第14章 CloudKit
14.1 准备
14.1.1 用户授权
14.1.2 iCloud容器
14.1.3 数据库
14.1.4 Zone
14.1.5 记录
14.1.6 订阅
14.2 开始
14.2.1 打开iCloud
14.2.2 程序主界面
14.2.3 全局对象
14.2.4 获取用户ID及姓名
14.2.5 将数据封装为CKRecord
14.2.6 上传照片
14.2.7 查看已经上传的图片
14.3 高级API
14.3.1 不完全抓取
14.3.2 分页抓取
14.3.3 抓取并缓存图片
14.3.4 错误处理及网络重试
14.3.5 CloudKit Dashboard
14.4 讨论
第15章 Photos框架
15.1 Photos初步
15.1.1 模型对象
15.1.2 抓取概述
15.1.3 检索内容
15.1.4 初始项目
15.1.5 获取用户授权
15.1.6 抓取
15.1.7 显示图片
15.1.8 缓存
15.1.9 标记用户选择
15.2 Photos进阶
15.2.1 API介绍
15.2.2 初始项目
15.2.3 创建新的拼接图
15.2.4 显示拼接图
15.2.5 收藏和删除
15.2.6 增加修订记录
15.2.7 读取修订记录
15.2.8 注册变更通知
15.2.9 监听变更通知
15.2.10 让SpliceListVC处理变更通知
15.2.11 让PhotoPicker处理变更通知
15.3 讨论
第16章 Handoff
16.1 Handoff基础
16.2 开始
16.2.1 Handoff兼容性
16.2.2 测试Handoff
16.2.3 初始项目
16.2.4 设置Team ID
16.2.5 添加活动类型
16.3 view活动
16.3.1 创建活动并开始广播
16.3.2 更新用户活动
16.3.3 停止广播
16.4 edit活动
16.4.1 创建活动并开始广播
16.4.2 更新用户活动
16.4.3 停止广播
16.5 恢复用户活动
16.5.1 在应用程序委托中接收Handoff广播
16.5.2 恢复view活动
16.5.3 恢复edit活动
16.6 讨论
第17章 WebKit
17.1 开始
17.1.1 初始项目
17.1.2 创建WKWebView实例
17.1.3 加载Web页
17.1.4 监视页面加载进度
17.1.5 页面导航
17.1.6 WKNavigationDelegate协议
17.2 WebKit进阶
17.2.1 脚本调试工具
17.2.2 隐藏网页内容
17.2.3 抓取页面内容
17.2.4 显示PopoverController
17.3 讨论
第18章 Living Rendering
18.1 Living Rendering初步
18.1.1 开启Living Redering特性
18.1.2 暴露@IBInspectable属性
18.1.3 绘制boxLayer层
18.1.4 绘制markLayer层
18.1.5 绘制文本图层
18.2 Living Rendering进阶
18.2.1 使用位图
18.2.2 响应事件
18.3 讨论
第19章 Visual Effects
19.1 Visual Effects初步
19.1.1 初始项目
19.1.2 使用Visual Effect View实现模糊特效
19.1.3 使用Visual Effect View实现Vibrancy效果
19.2 Visual Effects进阶
19.2.1 使用UIBlurEffect实现模糊效果
19.2.2 使用UIVibrancyEffect实现Vibrancy效果
19.3 讨论

前言/序言

  Swift 是苹果公司最新的、类型安全的现代编程语言,可用于 Cocoa 和 Cocoa Touch 开发。Swift 在苹果公司的 2014 年 WWDC 大会中首次亮相,至今已有近一年的历史。迄今为止,App 商店中已经出现了相当数量的Swift 应用。
  iOS 8 SDK随Swift同步推出,但得到的关注却远远小于后者。尤其是国内的开发者,对新SDK的研究和了解更是乏善可陈。实际上,iOS 8为开发者带来的机遇,远甚于苹果的新晋开发语言Swift。
  苹果全新设计了iOS 8,为它添加了大量新特性,例如App扩展,Cloud Kit、Health Kit以及经过精心设计的游戏开发框架。可以说,从来没有任何一个iOS的版本,能够像iOS 8一样,给我们带来如此大的改变。每一个使用过iOS 8 SDK的开发者都能够感受到它前所未有的强大。
  读者对象
  本书主要适合以下读者阅读:
  一是有 SDK 开发经验,想将现有App迁移到iOS 8的开发者,但苦于没有专门介绍 iOS 8 SDK 的书籍;
  二是已经具备一定 Swift 语言基础,但缺少进一步结合 SDK 进行Swift开发示例或没有足够代码积累的读者;
  三是有一定 SDK 开发经验,但还没有学习过 Swift 语言,想快速学习 Swift 并立即进行工程实践的读者;
  四是既想快速学习 Swift 又需要详细了解 iOS 8 SDK的读者。
  内容概览
  全书共19章,分为两部分。
  从第1章到第4章为本书第一部分,这部分介绍 Swift 语言。
  第1章介绍学习 Swift 之前需要了解的背景知识和学习过程中需要注意的“注意事项”,主要包括Swift 的源起、对Objective-C开发者带来的影响,以及初学者FAQ。
  第2章开始介绍 Swift 语言的基本语法,包括常量、变量、类型推断、字符串、流程控制。有了这些基础知识,我们起码可以在接下来的章节里写出一些“程序”。
  第3章介绍 Swift 语言强大的类型系统,包括元组、可空类型、集合、枚举、结构和类,其中有不少类型是前任的Objective-C语言所没有的,这也是 Swift 最为独特的地方。
  第4章介绍函数、闭包、协议、扩展、泛型。这些内容并不是孤立的,它们互相之间有着非常紧密的联系,充分反映了苹果在Objective-C发展过程中对 FP(函数式编程)方面的缺失做出的反思和改变。
  从第5章开始,为本书第二部分,开始陆续介绍 iOS 8 SDK 中的新特性。
  第5章介绍 iOS 8 在 UI 方面的两个主要内容:自动布局和自适应布局;尤其是后者“一次设计,所有设备运行”的特性。
  第6章介绍Split View Controller和旋屏。尤其是苹果对前者的改变,是广大 iOS 开发者期盼已久的事情。
  第7章介绍 Presentation Controller。iOS 8 统一了以前版本中的视图呈现方式,例如 Alert、Popover 和 Search Controller,使开发者可以完全控制 View Controller 的呈现及动画过程。
  第8章至第 13章,依次介绍了 iOS 8 新增的App 扩展,尤其对其中的几个组件进行了详细介绍:今日、分享、动作、照片编辑、文档提供者、键盘。
  第14章通过一个示例项目对CloudKit框架进行介绍。
  第15章介绍Photos 框架,包括对照片的编辑处理。
  第16章以案例的形式介绍HandOff框架。
  第17章介绍WebKit,尤其是苹果的全新脚本引擎。
  第18章介绍Live Rendering,并演示如何在自定义组件中使用Live Rendering技术。
  第19章介绍Visual Effects。程序员从此可以使用官方API来生成一些有趣的视觉效果,例如模糊效果和雾玻璃效果。
  特色分析
  本书所面向的读者市场尚是一片空白。目前市面上(国内)还没有专门介绍 iOS 8 SDK 的图书。
  本书顺应了市场潮流。本书借助苹果发布新版本 SDK 及新开发语言 Swift 之机,从一个应用开发者的角度,对二者进行了深入介绍,使开发者在熟悉新框架的过程中同时了解 Swift 这门语言。
  内容深入,案例丰富。本书第二部分介绍了 iOS 8 SDK 框架的新特性,而且基本上每个新特性都配有一个单独的案例项目。