×
超值优惠券
¥50
100可用 有效期2天

全场图书通用(淘书团除外)

关闭
暂无评论
图文详情
  • ISBN:9787302469209
  • 装帧:一般胶版纸
  • 册数:暂无
  • 重量:暂无
  • 开本:32开
  • 页数:413
  • 出版时间:2017-05-01
  • 条形码:9787302469209 ; 978-7-302-46920-9

本书特色

本书由专业的iOS开发工程师根据Swift 3精心编撰,兼备核心语法、编程技巧与应用实践3大主题。*部分从Xcode开发工具及Swift学习环境的搭建开始,重点介绍Swift 3的语言特性和应用场景,并提供了大量编程练习,帮助读者尽快掌握Swift语言的精髓。第二部分介绍Swift开发iOS应用的基本技能,包括独立UI控件的应用、视图界面逻辑的开发、动画与布局技术、网络与数据处理技术等,旨在带领读者掌握独立开发一款iOS 应用程序的能力。第三部分为应用部分,这部分安排了3个实战项目(简易计算器、生活记事本、中国象棋游戏),项目的安排有简到难,旨在全面锻炼读者的实际开发能力,使用Swift进行开发实践。 通过本书的学习,读者可以轻松地掌握使用Swift语言开发一款iOS软件从理论到实践的全部技术细节。本书适合使用Swift 3开发iOS应用的新手,有Objective-C基础想学习Swift 3的iOS开发人员,也很适合用作培训机构与大中专院校移动开发课程的教学参考书。

内容简介

本书免费赠送编者精心录制的Objective-C iOS界面设计视频教程,本视频教程共包括36个教学片段,播放时长超过13个小时。本书由专业的iOS开发工程师根据Swift 3精心编撰,兼备核心语法、编程技巧与应用实践3大主题,是一本使用Swift 3进行移动应用开发的实践性教程,通过学习本书,读者不仅能够掌握Swift语言,更重要的是可以使用Swift开发出一款具有商业价值的App产品。

目录

第1部分 Swift语言基础 第1章 学习环境的搭建 3 1.1 申请个人AppleID账号 3 1.2 下载与安装Xcode开发工具 4 1.3 Xcode开发工具简介 5 1.4 使用Playground进行Swift代码演练 9 第2章 量值与基本数据类型 10 2.1 变量与常量 10 2.1.1 变量与常量的定义和使用 11 2.1.2 变量和常量的命名规范 12 2.2 关于注释 13 2.3 初识基本数据类型 13 2.3.1 数学进制与计算机存储原理 14 2.3.2 整型数据 14 2.3.3 浮点型数据 15 2.3.4 布尔型数据 16 2.4 两种特殊的基本数据类型 16 2.4.1 元组 16 2.4.2 可选值类型 17 2.5 为类型取别名 20 2.6 练习及解析 20 第3章 字符、字符串与集合类型 21 3.1 字符串类型 21 3.1.1 进行字符串的构造 21 3.1.2 字符串的组合 22 3.2 字符类型 23 3.2.1 字符类型简介 23 3.2.2 转义字符 24 3.3 字符串类型中的常用方法 24 3.4 集合类型 26 3.4.1 Array数组类型 27 3.4.2 Set集合类型 30 3.4.3 Dictionary字典类型 33 3.5 练习及解析 35 第4章 基本运算符与程序流程控制 38 4.1 初识运算符 38 4.1.1 赋值运算符 39 4.1.2 基本算术运算符 39 4.1.3 基本逻辑运算符 40 4.1.4 比较运算符 41 4.1.5 条件运算符 41 4.2 Swift语言中两种特殊的运算符 42 4.2.1 空合并运算符 42 4.2.2 区间运算符 43 4.3 循环结构 43 4.3.1 for-in循环结构 43 4.3.2 while与repeat-while条件循环结构 44 4.4 条件选择与多分支选择结构 46 4.4.1 if与if-else条件选择结构 46 4.4.2 switch-case多分支选择结构 46 4.5 Swift语言中的流程跳转语句 49 4.6 练习及解析 52 第5章 函数与闭包技术 56 5.1 函数的基本应用 56 5.1.1 函数的创建与调用 57 5.1.2 关于函数的参数名 58 5.1.3 函数中参数的默认值、不定数量参数与inout类型参数 59 5.2 函数的类型与函数嵌套 61 5.3 理解闭包结构 63 5.3.1 闭包的语法结构 63 5.3.2 通过实现一个排序函数来深入理解闭包 63 5.4 将闭包作为参数传递时的写法优化 66 5.5 后置闭包、逃逸闭包与自动闭包 67 5.6 练习及解析 68 第6章 高级运算符与枚举 72 6.1 位运算符与溢出运算符 72 6.1.1 位运算符的应用 72 6.1.2 溢出运算符 74 6.2 运算符的重载与自定义 74 6.2.1 重载运算符 74 6.2.2 自定义运算符 76 6.3 运算符的优先级与结合性 77 6.4 枚举类型的创建与应用 79 6.5 枚举的原始值与相关值 81 6.5.1 枚举的原始值 81 6.5.2 枚举的相关值 82 6.5.3 递归枚举 83 6.6 练习及解析 86 第7章 类与结构体 88 7.1 类与结构体的定义 88 7.1.1 结构体 88 7.1.2 类 90 7.2 设计一个交通工具类 91 7.3 开发中类与结构体的应用场景 94 7.4 练习及解析 95 第8章 属性与方法 97 8.1 存储属性与计算属性 97 8.1.1 存储属性的意义及应用 97 8.1.2 计算属性的意义及应用 100 8.2 属性监听器 102 8.3 实例属性与类属性 103 8.4 实例方法与类方法 104 8.4.1 实例方法的意义与应用 104 8.4.2 类方法 105 8.5 下标方法 106 8.6 练习及解析 108 第9章 构造方法与析构方法 109 9.1 构造方法的设计与使用 109 9.2 指定构造方法与便利构造方法 112 9.3 构造方法的继承关系 113 9.4 构造方法的安全性检查 115 9.5 可失败构造方法与必要构造方法 116 9.6 析构方法 117 9.7 练习及解析 118 第10章 内存管理与异常处理 120 10.1 自动引用计数 120 10.2 循环引用及其解决方法 123 10.3 闭包中的循环引用 128 10.4 异常的抛出与传递 129 10.5 异常的捕获与处理 130 10.6 延时执行结构 131 10.7 练习及解析 132 第11章 类型转换、泛型、扩展与协议 133 11.1 类型检查与转换 133 11.1.1 Swift语言中的类型检查 134 11.1.2 Swift语言中的类型转换 134 11.2 Any与AnyObject类型 135 11.3 泛型 137 11.3.1 初识泛型 137 11.3.2 对泛型进行约束 139 11.4 扩展与协议 141 11.4.1 使用扩展对已经存在的数据类型进行补充 141 11.4.2 协议的特点与应用 143 11.4.3 协议与扩展的结合 146 第2部分 iOS开发基础 第12章 UI控件与逻辑交互(1) 148 12.1 iOS项目工程简介 148 12.1.1 创建iOS项目工程 148 12.1.2 运行**个iOS程序 150 12.2 标签控件——UILabel 151 12.2.1 使用代码创建一个UILabel控件 152 12.2.2 自定义UILable控件的展示效果 152 12.2.3 定义更加丰富多彩的UILabel控件 154 12.3 按钮控件——UIButton 155 12.3.1 创建UIButton按钮控件 155 12.3.2 为按钮添加触发事件 157 12.3.3 为UIButton添加自定义图片 158 12.4 图片显示控件——UIImageView 160 12.4.1 图片类UIImage 160 12.4.2 使用UIImageView进行图片的展示 160 12.4.3 使用UIImageView播放动画 161 12.5 文本输入框控件——UITextField 162 12.5.1 创建文本输入框控件 162 12.5.2 为UITextField设置左右视图 164 12.5.3 UITextField控件的代理方法 165 12.6 开关控件UISwitch 168 12.7 分页控制器——UIPageControl 169 12.8 分部控制器——UISegmentedControl 170 12.8.1 创建分布控制器控件 170 12.8.2 UISegmentedControl控件中按钮的增删改操作 171 12.8.3 关于UISegmentedControl控件中按钮的尺寸问题 172 第13章 UI控件与逻辑交互(2) 173 13.1 滑块控件UISlider 173 13.1.1 UISlider控件的创建与设置 173 13.1.2 UISlider控件的外观自定义与用户交互 174 13.2 活动指示器UIActivityIndicatorView 176 13.3 进度条控件UIProgressView 177 13.4 步进器UIStepper 178 13.5 选择器控件UIPickerView 180 13.6 时间选择器UIDataPicker 183 13.7 搜索栏控件UISearchBar 186 13.7.1 创建UISearchBar控件 186 13.7.2 UISearchBar控件的更多功能按钮 188 13.7.3 UISearchBar控件的附件视图 189 13.7.4 UISearchBarDelegate协议详解 190 第14章 视图控制器与高级UI视图控件 192 14.1 应用程序的界面管理器UIViewController 192 14.1.1 关于MVC设计模式 192 14.1.2 UIViewController的生命周期 193 14.1.3 UIViewController之间的切换与传值 195 14.2 导航视图控制器UINavigationController 200 14.2.1 理解导航结构 201 14.2.2 搭建使用导航结构的项目 201 14.2.3 对导航栏进行自定义设置 203 14.2.4 使用导航进行视图控制器的切换管理 205 14.3 标签栏控制器UITabBarController 207 14.3.1 创建以UITabBarController为项目结构工程 207 14.3.2 对UITabBarController中的标签进行自定义配置 210 14.3.3 标签栏上标签的溢出与排序功能 212 14.4 警告视图控制器的应用 214 14.4.1 认识UIAlertAction类 214 14.4.2 使用UIAlertController创建警告框弹窗 215 14.4.3 使用UIAlertController创建抽屉弹窗 217 14.5 网页视图的应用 218 14.5.1 网页视图UIWebView 218 14.5.2 认识WebKit框架 221 14.5.3 使用WKWebViewConfiguration对网页视图进行配置 222 14.5.4 WKWebView中重要属性和方法解析 225 14.5.5 关于WKUIDelegate协议 226 14.6 滚动视图UIScrollView的应用 227 14.6.1 创建UIScrollView滚动视图 227 14.6.2 UIScrollViewDelegate协议介绍 228 14.6.3 UIScrollView的缩放操作 230 14.7 列表视图UITableView的应用 231 14.7.1 创建UITableView列表 231 14.7.2 进行数据载体UITableViewCell的自定义 235 14.7.3 UITableView的编辑模式 238 14.7.4 为UITableView添加索引栏 242 14.8 集合视图UICollectionView的应用 243 14.8.1 使用UICollectionView实现简单的九宫格布局 243 14.8.2 使用FlowLayout进行更加灵活的九宫格布局 245 14.8.3 实现炫酷的瀑布流布局 247 14.9 分页控制器UIPageViewController的应用 251 14.9.1 创建一个UIPageViewController工程 251 14.9.2 关于UIPageViewControllerDelegate的更多应用 255 第15章 动画与界面布局技术 259 15.1 使用UIView层动画实现属性渐变效果 259 15.1.1 UIView层的属性过渡动画 259 15.1.2 UIView层的转场动画 263 15.2 通过GIF文件播放动画 265 15.2.1 使用原生的UIImageView来播放GIF动态图 265 15.2.2 使用UIWebView来进行GIF动态图的播放 267 15.3 iOS开发中的CoreAnimation核心动画技术 268 15.3.1 初识CoreAnimation框架 268 15.3.2 锚点对视图几何属性的影响 268 15.3.3 几种常用的CALayer子类介绍 269 15.3.4 CoreAnimation框架中的属性动画介绍 273 15.3.5 CoreAnimation框架中的转场动画与组合动画 274 15.4 炫酷的粒子效果 276 15.4.1 粒子发射引擎与粒子单元 276 15.4.2 创建火焰粒子效果 279 15.5 Autolayout自动布局技术 281 15.5.1 使用storyboard或者xib文件进行界面的自动布局 281 15.5.2 进行视图间的约束布局 284 15.5.3 使用原生代码进行Autolayout自动布局 285 15.5.4 使用第三方框架SnapKit进行Autolayout自动布局 288 15.6 使用Autolayout创建自适应高度的 UITextView输入框 289 第16章 网络与数据存储技术 292 16.1 获取互联网上公开API所提供的数据 292 16.1.1 注册APIStore会员 292 16.1.2 进行API接口测试 293 16.1.3 关于JSON数据格式 294 16.2 在iOS开发中进行网络数据请求 295 16.2.1 关于HTTP网络请求协议 295 16.2.2 使用URLSesstion进行网络请求 296 16.3 使用UserDefaults进行简单数据的持久化存储 298 16.3.1 使用UserDefaults与Plist文件进行常见类型数据的存储 298 16.3.2 使用Plist文件进行数据持久化处理 300 16.4 iOS开发中的归档技术应用 302 16.4.1 对简单数据类型的归档操作 302 16.4.2 对自定义数据类型进行归档操作 304 16.5 数据库在iOS开发中的应用 305 16.5.1 操作数据库常用语句 305 16.5.2 可视化数据库管理工具MesaSQLite的简单应用 308 16.5.3 libsqlite3数据库操作库简介 310 16.5.4 在iOS工程中调用libsqlite3库操作数据库 312 16.6 使用CoreData框架进行数据管理 315 16.6.1 使用CoreData框架进行数据模型设计 315 16.6.2 使用CoreData进行数据的添加与查询操作 317 第3部分 项目实战 第17章 实战一:简易计算器 321 17.1 计算器按键与操作面板的封装 321 17.2 计算器显示板输入显示的逻辑开发 324 17.3 计算器计算逻辑的设计 329 17.4 为应用添加图标与启动页 332 第18章 实战二:点滴生活记事本 334 18.1 项目工程的搭建 334 18.2 主页记事分组视图的开发 337 18.3 添加分组功能的开发 340 18.4 数据库引入与记事分组信息的持久化 342 18.5 记事列表界面的搭建 346 18.6 新建记事功能的开发 349 18.7 更新记事与删除记事功能的开发 355 第19章 实战三:《中国象棋》游戏 359 19.1 项目工程的搭建与音频模块的开发 359 19.2 《中国象棋》棋子控件的开发 363 19.3 《中国象棋》棋盘控件的开发 366 19.4 “兵”与“卒”行棋逻辑的开发 371 19.5 “将”与“士”相关棋子行棋逻辑的开发 379 19.6 “象”与“马”相关棋子行棋逻辑的开发 381 19.7 “车”与“炮”棋子行棋逻辑的开发 387 19.8 胜负判定逻辑开发与游戏功能完善 392 19.9 拆分冗长的checkCanMove()方法 398 附录A CocoaPods库管理工具的应用 406 附录B 关键概念检索表 409
展开全部

作者简介

张益珲 软件开发工程师,拥有多年iOS开发经验,曾开发iOS平台系列——游戏疯狂越狱1~2、应用物通配货软件、VIPExam考试库、证券财经软件等,现就职于中国唯品会。

预估到手价 ×

预估到手价是按参与促销活动、以最优惠的购买方案计算出的价格(不含优惠券部分),仅供参考,未必等同于实际到手价。

确定
快速
导航