Swift开发手册:技巧与实战pdf下载

Swift开发手册:技巧与实战百度网盘pdf下载

作者:
简介:Swift开发手册:技巧与实战
出版社:电子工业出版社
出版时间:2015-12-01
pdf下载价格:0.00¥

免费下载


书籍下载


内容介绍

编辑推荐
  Swift 与Object-C知识点对比讲解:即便你之前没有接触过Object-C,只要你有一定的编程基础,就能轻松看懂。基础知识也实操案例并重:书中的知识点每学完一部分,就立刻可有相关的案例供你实操演练,达到学以致用的目的。知识点全:目录安排循序渐进,尽量避免了在基础章节有超前知识,既适合初学者,也可作才有经验的Swifter作为备忘手册。版本新:本书全书均基于Swift 1.2 正式版本,也是目前大多开发项目使用的版本,并单独划分了章节介绍Swift 2.0相关语法及特性,读者在可1.2版本上轻松进阶2.0,毫无难度。
内容简介
  全书分为7章,第1章介绍了与iOS开发环境搭建有关的知识点。第2章是Swift基础语法,基于Swift 1.3正式版本。第3章是Swift进阶语法,除了有难度的语法点之外,还加入了Swift 2.0正式版本的语法改动与新特性。第4章是作者根据斯坦福大学iOS 8公开课的计算器项目进行改进的计算器项目,通过这个简单的项目介绍了Xcode的基本用法和在iOS开发中的重要概念——MVC模式。第5章介绍了iOS中的重要内容UIKit框架,涵盖了UIKit中常用的控件,并通过丰富的实例展示了每一个控件的用法,第5章的最后几节介绍了iOS 9中的新成员,并详细讲解了何如使用AutoLayout对页面元素进行布局。第6章介绍了iOS系统API的用法,全部基于Xcode 7.0正式版,使用Swift 2.0语法。第7章是作者精心挑选的一些帮助贴士。
作者简介
  陈刚:国内第一批Swift爱好者,有上万行Swift代码编程经验,CSDN博客Swift专栏写手,一直坚持采用纯粹的Swift语言进行APP开发,并用纯粹的Swift开发作品去参加竞赛,并获得了不错的成绩。
目录
版权信息
推荐序
前言
第1章 搭建Swift开发环境
1.1 Swift介绍
1.1.1 Swift的前世今生
1.1.2 Swift与Objective-C
1.2 Mac OS X操作系统
1.3 Xcode简介和获取方法
1.3.1 Xcode简介
1.3.2 Playground简介
1.3.3 Xcode的获取方法
1.4 iPhone SDK简介
第2章 Swift基础语法
2.1 基础知识
2.1.1 命名规则
2.1.2 常量与变量
2.1.3 类型推测
2.1.4 注释
2.1.5 输出常量和变量
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.3.6 三元运算符
2.3.7 逻辑运算符
2.3.8 范围
2.3.9 括号优先级
2.4 字符串与字符
2.5 集合类型
2.5.1 数组
2.5.2 集合
2.5.3 字典
2.6 控制流
2.6.1 for循环
2.6.2 while循环
2.6.3 if判断语句
2.6.4 switch开关语句
2.7 函数
2.8 闭包
2.9 Swift三杰——类、结构体、枚举
2.9.1 Swift三杰简介
2.9.2 值引用与类型引用
2.9.3 类
2.9.4 结构体
2.9.5 枚举
2.10 属性
2.10.1 存储属性
2.10.2 计算属性
2.10.3 属性观察器
2.10.4 类型属性
2.11 方法
2.12 下标
2.13 继承
2.14 构造与析构
2.14.1 构造器
2.14.2 析构器
2.15 类型检查与类型转换
2.15.1 类型检查
2.15.2 类型转换
2.16 类型嵌套
2.17 扩展
2.17.1 扩展计算属性
2.17.3 扩展方法
2.17.4 扩展下标
2.18 协议
2.18.1 声明协议
2.18.2 遵守协议
2.18.3 实现协议
2.19 泛型
2.20 断言
第3章 Swift进阶语法
3.1 再谈可选型
3.1.1 可选型
3.1.2 为什么要用可选型
3.1.3 解包可选型
3.1.4 可选绑定
3.1.5 可选链
3.2 AnyObject
3.2.1 AnyObject简介
3.2.2 AnyObject的使用
3.3 几个数组相关的实用方法
3.3.1 filter方法
3.3.2 map方法
3.3.3 reduce方法
3.3.4 sort方法
3.3.5 contains方法
3.3.6 find方法
3.4 Objective-C兼容性
3.5 ARC自动引用计数
3.5.1 ARC原理
3.5.2 循环强引用
3.5.3 弱引用与无主引用
3.6 带下标的遍历
3.6.1 C语言风格的for循环
3.6.2 快速遍历
3.6.3 enumerateObjectsUsingBlock
3.6.4 enumerate
3.7 方法参数的语法甜头
3.7.1 可变参数
3.7.2 柯里化
3.8 闭包的“延迟调用”特性
3.9 Swift 2.0新特性详解
3.9.1 println简化为print
3.9.2 do-while更名为repeat-while
3.9.3 where关键字
3.9.4 if-case结构
3.9.5 guard关键字
3.9.6 错误处理
3.9.7 LLVM与泛型特化
3.9.8 Protocol Extensions
3.9.9 API的可用性检查
3.9.10 String与NSString言归于好
3.9.11 总结
第4章 iOS开发中的MVC模式
4.1 iOS系统初探
4.1.1 核心OS(Core OS)层
4.1.2 核心服务(Core Services)层
4.1.3 媒体(Media)层
4.1.4 Cocoa Touch层
4.2 MVC模式
4.2.1 MVC简介
4.2.2 iOS中的MVC
4.3 新建一个Swift工程
4.4 认识Interface Builder
4.5 构建计算器界面
4.5.1 使用对象库中的对象
4.5.2 使用检查器设置对象
4.5.3 尝试运行程序
4.5.4 添加约束
4.5.5 关联代码
4.5.6 完善按键
4.6 实现计算器逻辑
4.6.1 补全键盘
4.6.2 给键盘添加约束
4.6.3 实现数字显示功能
4.6.4 实现运算逻辑
4.7 修改计算器为MVC模式
4.8 NSNotification
4.8.1 NSNotification简介
4.8.2 addObserver方法
4.8.3 addObserverForName方法
4.8.4 postNotification方法
第5章 掌控UIKit
5.1 本地化
5.2 视图(View)
5.3 生命周期
5.3.1 APP的生命周期
5.3.2 控制器的生命周期
5.4 Button(按钮)
5.4.1 按钮属性检查器
5.4.2 按钮的代码实现
5.4.3 为按钮添加事件
5.5 Label(标签)
5.5.1 Label的属性检查器
5.5.2 Label的代码实现
5.6 TextField(文本框)
5.6.1 Text Field的属性检查器
5.6.2 Text Field的代码实现
5.6.3 键盘
5.7 Switch(开关)
5.8 Segmented Control(分段控件)
5.8.1 Segmented Control的属性检查器
5.8.2 Segmented Control的代码实现
5.8.3“按钮”还是“分段”
5.9 Slider(滑块)
5.9.1 Slider的属性检查器
5.9.2 Slider的代码实现
5.10 ProgressView&ActivityIndicatorView
5.10.1 多线程入门
5.10.2 ProgressView(进度条)
5.10.3 ActivityIndicatorView(环形进度条)
5.11 Stepper(步进器)
5.11.1 Stepper的属性检查器
5.11.2 Stepper的代码实现
5.12 ImageView嘈像控件)
5.12.1 UIImageView&UIImage
5.12.2 UIImageView的属性检查器
5.12.3 UIImageView的代码实现
5.13 PickerView&DatePicker
5.13.1 PickerView(选择器)简介
5.13.2 使用delegate和dataSource
5.13.3 PickerView的代码实现
5.13.4 DatePicker(日期选择器)的属性检查器
5.13.5 DatePicker的代码实现
5.13.6 浅谈“Delegate pattern”委托模式
5.14 AlertView&ActionSheet
5.14.1 AlertView(提醒框)
5.14.2 ActionSheet(操作表)
5.14.3 更好的选择:UIAlertController
5.15 多重MVC及Segue(过渡)
5.15.1 多重MVC与Segue简介
5.15.2 NavigationController(导航控制器)
5.15.3 Segue(过渡)
5.15.4 SplitViewController(分屏控制器)
5.15.5 TabBarController(选项卡控制器)
5.15.6 PageViewController(页面控制器)
5.16 Toolbar(工具栏)
5.17 ScrollView(滚动视图)
5.17.1 ScrollView简介
5.17.2 CGFloat、CGPoint、CGSize
5.17.3 视图的坐标系统
5.17.4 ScrollView实战
5.18 TableViewController(表视图控制器)
5.18.1 UITableView简介
5.18.2 UITableViewCell简介
5.18.3 TabelView与cell的交互
5.19 SearchBar(搜索框)
5.19.1 SearchBar的属性检查器
5.19.2 实时显示搜索结果的SearchBar
5.20 iOS与Web
5.20.1 UIWebView
5.20.2 WKWebView
5.20.3 SFSafariViewController
5.21 AutoLayout&StackView
5.21.1 AutoLayout(自动布局)
5.21.2 UIStackView(堆栈视图)
第6章 iOS开发揭秘
6.1 Gesture(手势)
6.2 KVC与API设计
6.3 访问短信API与电话API
6.3.1 使用URL访问短信API与电话API
6.3.2 MessageUI
6.4 访问相册API与相机API
6.5 快速分享API
6.6 地图与定位API
6.7 网络通信
6.7.1 网络通信初探
6.7.2 NSURLConnection还是NSURLSession
6.8 数据持久化
6.8.1 Archiving(归档)
6.8.2 File System(文件系统)
6.8.3 SQLite&Core Data
6.9 多线程
6.9.1 GCD
6.9.2 NSOperationQueue
附录A Swifter帮助贴士
前言
  首先感谢您购买本书,这可能是您读到的最不像“前言”的前言。作为本书的作者,我并不想向您灌输Swift 这门语言是多么优秀多么有潜力这样的鸡汤,我想要分享的是作为一名Swifter收获的成长与乐趣。
  天意渐凉,年关将至,Swift 已经悄然走过了它的第一个年头,从1.0 版本的毛头小孩成长为2.0 版本的坚毅少年。和许多有资历的作者不同,Swift 是我的iOS 入门语言,原来的我是个真正的菜鸟。
  2014 年的深冬,我躲在温暖的咖啡馆中,打开Playground 小心翼翼地敲下一行“Hello,Swift!”,从此这个世界上又多了一个Swifter。和所有尝试新技术的程序员一样,最初的经历并不是一帆风顺的,每个版本都有不小的语法改动,Xcode 6 经常莫名出错,国内的资料十分匮乏,我买光了市面上能买到的所有Swift 图书,不幸的是有些作者喜欢拿贴着Swift 标签的新瓶子装一些旧酒。不久我迎来了那个学期的寒假,这是提升编程能力的好时机。那个寒假微信红包在疯狂地刷屏,而我在疯狂地使用Swift 编写着各种小程序,连我的父母都惊讶于我的变化,我想这大概就是Swift的魔力。假期结束我第一次尝试使用纯粹的Swift 开发作品去参加竞赛,因为团队人手不足还自学了Sketch,自己动手制作UI 素材,最终获得了不错的成绩,这让我很受鼓舞。之后接触了越来越多的英文资料,连我弱项之一的英语水平也有了很大提高。再之后只身前往北京的创业团队实习,应聘季拿到了满意的offer,业余时间还能接一些iOS 开发的私活赚点零花钱,我想这些机会与我努力学习Swift 是分不开的。2015 年4 月份的时候电子工业出版社的安娜编辑通过我的CSDN 博客联系到我,向我发出了约稿的邀请,让我感到受宠若惊,这是本书的由来。
  我用了大概半年的时间完成了这本书的初稿,在最初的一个月里我主要的工作是编排目录,针对我自己在学习过程中遇到的那些坑,我希望本书的目录能尽可能地适合初学者,避免在基础章节有超前的知识点,建议初学者按章节阅读,通过渐进学习的方式去掌握本书的知识点。对于那些有经验的开发者,本书的知识点较为全面,版本也比较贴近目前日常开发所使用的版本,可以作为一个备忘手册,在遇到某些易错或者不易记忆的API 时,我本人也时常翻阅此书。
  全书分为7 章,第1 章介绍了与iOS 开发环境搭建有关的知识点。第2 章是Swift 基础语法,基于Swift 1.2 正式版本。第3 章是Swift 进阶语法,除了有难度的语法点之外,还加入了Swift 2.0正式版本的语法改动与新特性,如果你对Swift 1.2 版本的语法已足够熟悉,可以直接翻看3.9 小节。第4 章是作者根据斯坦福大学iOS 8 公开课的计算器项目进行改进的计算器项目,通过这个简单的项目介绍了Xcode 的基本用法和在iOS 开发中的重要概念——MVC模式。第5 章介绍了iOS中的重要内容UIKit 框架,涵盖了UIKit 中常用的控件,并通过丰富的实例展示了每一个控件的用法,第5 章的最后几节介绍了iOS 9 中的新成员,并详细讲解了何如使用AutoLayout 对页面元素进行布局。第6 章介绍了iOS 系统API 的用法,全部基于Xcode 7.0 正式版,使用Swift 2.0 语法。如果本书的知识点不能为您提供帮助,希望本书最后一章精心挑选的一些帮助贴士可以帮助到您。最后,感谢父母的鼓励与支持,感谢我的舍友加竞赛队友王探云、汤闻达两位同学,感谢在“厅客”实习时刑淇翔、蔡清茂两位学长对我的照顾和夏凡对我在技术上的指导,感谢1+1+果汁店的老板朱哥和墨点咖啡的老板老郭、大可为我提供了写作的场地,感谢好未来教育集团对我的青睐与厚望,感谢北京随身移动公司对本书的大力支持。