本书以读者能够完全独立发iOS应用为目标构建知识体系,全书分为三部分,各部分说明如下: 部分 将为读者介绍Swift语言的语法,这也是本书后面部分的基础,共12章,每1章都为读者介绍Swift语言的一些基础语法,包括数据类型、流程控制语句、运算符、函数与闭包、枚举、结构体、类、属性与方法、对象构造与析构、内存管理、异常处理、扩展与协议以及Swift语言的新特性等。
售 价:¥
纸质售价:¥92.80购买纸书
6.2
温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印
为你推荐

封面页
书名页
版权页
作者介绍
内容简介
前言
目录
第一部分 Swift语言基础语法
第1章 学习环境的搭建
1.1 申请个人AppleID账号
1.2 下载与安装Xcode开发工具
1.3 Xcode开发工具简介
1.4 使用Playground进行Swift代码演练
第2章 量值与基本数据类型
2.1 变量与常量
2.1.1 变量与常量的定义和使用
2.1.2 变量和常量的命名规范
2.2 关于注释
2.3 初识基本数据类型
2.3.1 数学进制与计算机存储原理
2.3.2 整型数据
2.3.3 浮点型数据
2.3.4 布尔型数据
2.4 两种特殊的基本数据类型
2.4.1 元组
2.4.2 可选值类型
2.5 为类型取别名
2.6 练习及解析
2.7 模拟面试
第3章 字符、字符串与集合类型
3.1 字符串类型
3.1.1 进行字符串的构造
3.1.2 字符串的组合
3.2 字符类型
3.2.1 字符类型简介
3.2.2 转义字符
3.3 字符串类型中的常用方法
3.4 集合类型
3.4.1 数组(Array)类型
3.4.2 集合(Set)类型
3.4.3 字典(Dictionary)类型
3.5 练习及解析
3.6 模拟面试
第4章 基本运算符与程序流程控制
4.1 初识运算符
4.1.1 赋值运算符
4.1.2 基本算术运算符
4.1.3 基本逻辑运算符
4.1.4 比较运算符
4.1.5 条件运算符
4.2 Swift语言中两种特殊的运算符
4.2.1 空合并运算符
4.2.2 区间运算符
4.3 循环结构
4.3.1 for-in循环结构
4.3.2 while与repeat-while条件循环结构
4.4 条件选择与多分支选择结构
4.4.1 if与if-else条件选择结构
4.4.2 switch-case多分支选择结构
4.5 Swift语言中的流程跳转语句
4.6 练习及解析
4.7 模拟面试
第5章 函数与闭包技术
5.1 函数的基本应用
5.1.1 函数的创建与调用
5.1.2 关于函数的参数名
5.1.3 函数中参数的默认值、不定数量参数与inout类型参数
5.2 函数的类型与函数嵌套
5.3 理解闭包结构
5.3.1 闭包的语法结构
5.3.2 通过实现一个排序函数来深入理解闭包
5.4 将闭包作为参数传递时的写法优化
5.5 后置闭包、逃逸闭包与自动闭包
5.6 练习及解析
5.7 模拟面试
第6章 高级运算符与枚举
6.1 位运算符与溢出运算符
6.1.1 位运算符的应用
6.1.2 溢出运算符
6.2 运算符的重载与自定义
6.2.1 重载运算符
6.2.2 自定义运算符
6.3 运算符的优先级与结合性
6.4 枚举类型的创建与应用
6.5 枚举的原始值与相关值
6.5.1 枚举的原始值
6.5.2 枚举的相关值
6.5.3 递归枚举
6.6 练习及解析
6.7 模拟面试
第7章 类与结构体
7.1 类与结构体的定义
7.1.1 结构体
7.1.2 类
7.2 设计一个交通工具类
7.3 开发中类与结构体的应用场景
7.4 练习及解析
7.5 模拟面试
第8章 属性与方法
8.1 存储属性与计算属性
8.1.1 存储属性的意义及应用
8.1.2 计算属性的意义及应用
8.2 属性监听器
8.3 属性包装器
8.4 实例属性与类属性
8.5 实例方法与类方法
8.5.1 实例方法的意义与应用
8.5.2 类方法
8.6 下标方法
8.7 练习及解析
8.8 模拟面试
第9章 构造方法与析构方法
9.1 构造方法的设计与使用
9.2 指定构造方法与便利构造方法
9.3 构造方法的继承关系
9.4 构造方法的安全性检查
9.5 可失败构造方法与必要构造方法
9.6 析构方法
9.7 练习与解析
9.8 模拟面试
第10章 内存管理与异常处理
10.1 自动引用计数
10.2 循环引用及其解决方法
10.3 闭包中的循环引用
10.4 异常的抛出与传递
10.5 异常的捕获与处理
10.6 延时执行结构
10.7 练习与解析
10.8 模拟面试
第11章 类型转换、泛型、扩展与协议
11.1 类型检查与转换
11.1.1 Swift语言中的类型检查
11.1.2 Swift语言中的类型转换
11.2 Any与AnyObject类型
11.3 泛型
11.3.1 初识泛型
11.3.2 对泛型进行约束
11.4 扩展与协议
11.4.1 使用扩展对已经存在的数据类型进行补充
11.4.2 协议的特点与应用
11.4.3 协议与扩展的结合
11.5 模拟面试
第12章 Swift的高级特性
12.1 内存安全检查(独占访问权限)
12.2 关联类型可以添加where约束子句
12.3 增强字符串和区间运算符的功能
12.4 动态成员查找与动态方法调用
12.5 泛型与协议功能的增强
12.6 模拟面试
第二部分 iOS开发基础
第13章 UI控件与逻辑交互(1)
13.1 iOS项目工程简介
13.1.1 创建iOS项目工程
13.1.2 运行第一个iOS程序
13.2 标签控件——UILabel
13.2.1 使用代码创建一个UILabel控件
13.2.2 自定义UILable控件的展示效果
13.2.3 定义更加丰富多彩的UILabel控件
13.3 按钮控件——UIButton
13.3.1 创建UIButton按钮控件
13.3.2 为按钮添加触发事件
13.3.3 为UIButton添加自定义图片
13.4 图片显示控件——UIImageView
13.4.1 图片类UIImage
13.4.2 使用UIImageView进行图片的展示
13.4.3 使用UIImageView播放动画
13.5 文本输入框控件——UITextField
13.5.1 创建文本输入框控件
13.5.2 为UITextField设置左右视图
13.5.3 UITextField控件的代理方法
13.6 开关控件UISwitch
13.7 分页控制器——UIPageControl
13.8 分部控制器——UISegmentedControl
13.8.1 创建分布控制器控件
13.8.2 UISegmentedControl控件中按钮的增、删、改操作
13.8.3 关于UISegmentedControl控件中按钮的尺寸问题
13.9 模拟面试
第14章 UI控件与逻辑交互(2)
14.1 滑块控件UISlider
14.1.1 UISlider控件的创建与设置
14.1.2 UISlider控件的外观自定义与用户交互
14.2 活动指示器控件UIActivityIndicatorView
14.3 进度条控件UIProgressView
14.4 步进器控件UIStepper
14.5 选择器控件UIPickerView
14.6 时间选择器控件UIDataPicker
14.7 搜索栏控件UISearchBar
14.7.1 创建UISearchBar控件
14.7.2 UISearchBar控件的更多功能按钮
14.7.3 UISearchBar控件的附件视图
14.7.4 UISearchBarDelegate协议详解
14.8 模拟面试
第15章 视图控制器与高级UI视图控件
15.1 应用程序的界面管理器UIViewController
15.1.1 关于MVC设计模式
15.1.2 UIViewController的生命周期
15.1.3 UIViewController之间的切换与传值
15.2 导航视图控制器UINavigationController
15.2.1 理解导航结构
15.2.2 搭建使用导航结构的项目
15.2.3 对导航栏进行自定义设置
15.2.4 使用导航进行视图控制器的切换管理
15.3 标签栏控制器UITabBarController
15.3.1 创建以UITabBarController为项目结构的工程
15.3.2 对UITabBarController中的标签进行自定义配置
15.3.3 标签栏上标签的溢出与排序功能
15.4 警告视图控制器的应用
15.4.1 认识UIAlertAction类
15.4.2 使用UIAlertController创建警告框弹窗
15.4.3 使用UIAlertController创建抽屉弹窗
15.5 网页视图的应用
15.5.1 网页视图UIWebView
15.5.2 认识WebKit框架
15.5.3 使用WKWebViewConfiguration对网页视图进行配置
15.5.4 WKWebView中重要的属性和方法解析
15.5.5 关于WKUIDelegate协议
15.6 滚动视图UIScrollView的应用
15.6.1 创建UIScrollView滚动视图
15.6.2 UIScrollViewDelegate协议介绍
15.6.3 UIScrollView的缩放操作
15.7 列表视图UITableView的应用
15.7.1 创建UITableView列表
15.7.2 进行数据载体UITableViewCell的自定义
15.7.3 UITableView的编辑模式
15.7.4 为UITableView添加索引栏
15.8 集合视图UICollectionView的应用
15.8.1 使用UICollectionView实现简单的九宫格布局
15.8.2 使用FlowLayout进行更加灵活的九宫格布局
15.8.3 实现炫酷的瀑布流布局
15.9 模拟面试
第16章 动画与界面布局技术
16.1 使用UIView层动画实现属性渐变效果
16.1.1 UIView层的属性过渡动画
16.1.2 UIView层的转场动画
16.2 通过GIF文件播放动画
16.2.1 使用原生的UIImageView来播放GIF动态图
16.2.2 使用UIWebView进行GIF动态图的播放
16.3 iOS开发中的CoreAnimation核心动画技术
16.3.1 初识CoreAnimation框架
16.3.2 锚点对视图几何属性的影响
16.3.3 几种常用的CALayer子类介绍
16.3.4 CoreAnimation框架中的属性动画介绍
16.3.5 CoreAnimation框架中的转场动画与组合动画
16.4 炫酷的粒子效果
16.4.1 粒子发射引擎与粒子单元
16.4.2 创建火焰粒子效果
16.5 Autolayout自动布局技术
16.5.1 使用Storyboard或者XIB文件进行界面的自动布局
16.5.2 进行视图间的约束布局
16.5.3 使用原生代码进行Autolayout自动布局
16.5.4 使用第三方框架SnapKit进行Autolayout自动布局
16.6 使用Autolayout创建自适应高度的UITextView输入框
16.7 模拟面试
第17章 网络与数据存储技术
17.1 获取互联网上公开API所提供的数据
17.1.1 注册天行API会员
17.1.2 进行API接口测试
17.1.3 关于JSON数据格式
17.2 在iOS开发中进行网络数据请求
17.2.1 关于HTTP网络请求协议
17.2.2 使用URLSesstion进行网络请求
17.3 使用UserDefaults进行简单数据的持久化存储
17.3.1 使用UserDefaults与Plist文件进行常见类型数据的存储
17.3.2 使用Plist文件进行数据持久化处理
17.4 iOS开发中的归档技术应用
17.4.1 对简单数据类型的归档操作
17.4.2 对自定义数据类型进行归档操作
17.5 数据库在iOS开发中的应用
17.5.1 操作数据库常用语句
17.5.2 可视化数据库管理工具MesaSQLite的简单应用
17.5.3 libsqlite3数据库操作库简介
17.5.4 在iOS工程中调用libsqlite3库操作数据库
17.6 使用CoreData框架进行数据管理
17.6.1 使用CoreData框架进行数据模型设计
17.6.2 使用CoreData进行数据的添加与查询操作
17.7 模拟面试
第18章 SwiftUI技术
18.1 视图的布局方式
18.1.1 SwiftUI布局初体验
18.1.2 使用图片组件
18.1.3 在SwiftUI中使用UIKit中的组件
18.2 SwiftUI中的列表视图
18.2.1 编写行视图
18.2.2 将数据关联到视图
18.2.3 构建列表视图
18.3 使用导航进行页面跳转
18.4 处理用户交互
18.4.1 SwiftUI中的按钮组件
18.4.2 SwiftUI中的状态
18.4.3 使用环境对象
18.5 SwiftUI自定义绘制
18.5.1 图形绘制
18.5.2 设置绘制属性
18.5.3 简单的图形变换与组合
18.6 SwiftUI中的动画技术
18.6.1 属性动画
18.6.2 转场动画
18.7 模拟面试
第三部分 实战
第19章 实战一:简易计算器
19.1 计算器按键与操作面板的封装
19.2 计算器显示板输入显示的逻辑开发
19.3 计算器计算逻辑的设计
19.4 为应用添加图标与启动页
第20章 实战二:点滴生活记事本
20.1 项目工程的搭建
20.2 主页记事分组视图的开发
20.3 添加分组功能的开发
20.4 数据库引入与记事分组信息的持久化
20.5 记事列表界面的搭建
20.6 新建记事功能的开发
20.7 更新记事与删除记事功能的开发
第21章 实战三:《中国象棋》游戏
21.1 项目工程的搭建与音频模块的开发
21.2 《中国象棋》棋子控件的开发
21.3 《中国象棋》棋盘控件的开发
21.4 “兵”与“卒”行棋逻辑的开发
21.5 “将”与“士”相关棋子行棋逻辑的开发
21.6 “象”与“马”相关棋子行棋逻辑的开发
21.7 “车”与“炮”棋子行棋逻辑的开发
21.8 胜负判定逻辑开发与游戏功能完善
21.9 拆分冗长的checkCanMove()方法
附录A CocoaPods库管理工具的应用
附录B 关键概念检索表
买过这本书的人还买过
读了这本书的人还在读
同类图书排行榜