编辑推荐
《Swift语言实战晋级》深入挖掘Swift语言的使用规律。省略过多讲述基础语法的篇幅,从而把重点放在实践上,通过豆瓣电台、跑酷熊猫、围住神经猫多个案例来与大家一同研究如何用Swift制作有趣的应用和游戏。
在51CTO学院、SwiftV课堂发布的相关教学视频可配合使用。
《Swift语言实战晋级》中使用的图片素材、代码包均在线共享。
51CTO传媒总裁熊平、51CTO学院高级运营经理曹亚莉、SwiftV课堂创始人周鑫、泰课在线创始人杜增强、天地君道培训创始人黑羽鼎力推荐。
书内附赠51CTO学院100金币的学习卡、SwiftV课堂90元代金券。
本书附赠的51CTO学院100金币课程学习卡如遇到无法使用、卡片遗漏等任何问题,请联系mahan@ptpress.com.cn,我们将尽快为您解决。
内容简介
《Swift语言实战晋级》主要通过大量实例来讲解Swift语言在软件开发中的实际应用方法。《Swift语言实战晋级》共9章,前2章快速讲述Swift的基础内容,即开发环境的搭建和Swift的基础语法。由于本书是晋级篇,故不再大篇幅讲解基础内容。第3~6章以UIKit控件为主要内容,通过拖拖看小游戏、豆瓣电台、任务提醒软件几个案例来充分巩固UIKit从基础到高级的知识体系,其中还会涉及网络数据读取、图片缓存等技术。第7~9章我们共同聊一聊SpriteKit的应用,以围住神经猫、跑酷熊猫两个实例来讲述2D游戏的开发技术。《Swift语言实战晋级》适合对Swift语言的基础内容有一定了解的读者提升实战技能。
作者简介
老镇,本名曾伟,勤劳码农一名,擅长iOS游戏与应用开发。拥有十余年研发经验,是国内最早一批Swift研究者。51CTO学院、SwiftV课堂热门讲师。Swift系列视频教程《跑酷熊猫》、《豆瓣电台》和《Swift动画编程指南》的原作者。
精彩书评
★《Swift语言实战晋级》理论与实践相结合,向读者展示了Swift的语法、UIKit和SpriteKit等的使用方法。它是一座精彩的Swift实践城堡。本书配有相关教学视频,同步讲解。书内案例中的素材和代码均在线共享,让你真正做到学以致用。
——51CTO传媒总裁 熊平 ★Swift因其语法简单、使用方便、可与OC混合使用等特性,让广大开发者兴奋不已。一时之间各种Swift入门视频、教程兴起,相信经过了这么长时间的入门学习,大家到了需要提高实战技能的时候了,《Swift语言实战晋级》从Swift的语言精要、用Swift控制UIKit控件及Swift实战(包含基于UIKit的应用实例和基于SpriteKit的游戏编程)三部分帮助大家提升Swift语言实战能力。不管你是Swift语言初学者,还是有一定编程经验的开发者都可以把它当作案头工具书。
——51CTO学院高级运营经理 曹亚莉 ★Swift正在改变iOS的开发生态,《Swift语言实战晋级》并不局限于理论介绍,而是采用了“项目驱动”的方式来讲授知识点,提供了多个项目实例,极具参考价值。《Swift语言实战晋级》不仅适合作为初级开发者的入门教程,同时也可作为高级开发者参阅的工具书。 —
—SwiftV课堂创始人 周鑫 ★《Swift语言实战晋级》通过多个游戏和应用来讲解Swift的语法、UIKit和SpriteKit等的使用方法,内容由浅入深,以实际案例解析和巩固知识点,是一本不可多得的好书。同时,《Swift语言实战晋级》将作为泰课在线Swift课程官方指定教材使用。 —
—泰课在线联合创始人 杜增强 ★书品如人品。老镇与我相识多年,勤敏敦厚。以“项目驱动”为理念,进行各方向探索和技术研究,重实际,广博而得其味。今于新秀Swift有心得而集成册,相信一定能大有益于学人!作为朋友,至诚推荐! —
—天地君道培训创始人 黑羽 目录
第1章 Swift开发环境的搭建
1.1 下载Xcode
1.2 关于Mac操作系统
第2章 Swift语法速读
2.1 基础知识
2.1.1 变量与常量
2.1.2 注释
2.1.3 整数
2.1.4 浮点数
2.1.5 类型推测
2.1.6 数值型类型转换
2.1.7 布尔值
2.1.8 元组
2.1.9 可选类型
2.1.10 断言
2.2 基本运算符
2.2.1 赋值运算符
2.2.2 数值运算
2.2.3 自增(自减)运算
2.2.4 复合赋值
2.2.5 比较运算
2.2.6 三元运算符号
2.2.7 区间
2.2.8 逻辑运算
2.2.9 括号优先级
2.3 字符串和字符
2.3.1 字符串
2.3.2 字符
2.4 集合类型
2.4.1 数组
2.4.2 字典
2.5 流程控制
2.5.1 for循环
2.5.2 while循环
2.5.3 条件语句
2.5.4 控制转移语句
2.6 函数
2.7 闭包
2.8 枚举
2.9 类和结构体
2.10 属性
2.11 方法
2.12 下标
2.13 继承
2.14 构造过程
2.15 析构过程
2.16 自动引用计数
2.17 可选链
2.18 类型转换
2.19 类型嵌套
2.20 扩展
2.21 协议
2.22 泛型
2.23 访问控制
2.24 高级运算符
第3章 基础UIKit控件概览
3.1 创建工程及基本操作
3.1.1 创建Single View Application工程
3.1.2 基本操作
3.2 Button(按钮)
3.2.1 Button控件的基本属性
3.2.2 Button实例:各类按钮
3.3 Label
3.3.1 Label控件的基本属性
3.3.2 Label实例:各类文本标签
3.4 TextField
3.4.1 文本框控件的属性
3.4.2 实例:登录界面
3.4.3 实例:加法计算器
3.5 TextView
3.5.1 多行文本框的属性
3.5.2 实例:自定义选择内容后的菜单
3.6 Switch
3.6.1 文本框控件的属性
3.6.2 Switch控制TextView的可编辑属性
3.7 SegmentedControl
3.7.1 Segmented Control的属性
3.7.2 Segmented Control实例
3.8 ImageView
3.8.1 图像控件的基本属性
3.8.2 图像控件实例
3.9 ProgressView
3.9.1 进度条控件的属性
3.9.2 进度条控件的实例
3.10 ActivityIndicator View
3.10.1 环形进度条的基本属性
3.10.2 环形进度条实例
3.11 Slider
3.11.1 拖动条的基本属性
3.11.2 实例:拖动条控制图片透明度
3.12 AlertView
3.12.1 警告框的基本属性
3.12.2 实例:各式各样的警告框
3.13 ActionSheet
3.13.1 底部警告框的基本属性
3.13.2 底部警告框的实例
3.14 DatePicker
3.14.1 日期选择器的基本属性
3.14.2 日期选择器的实例
3.15 PickerView
3.15.1 选择器的一些属性
3.15.2 选择器的实例
3.16 Stepper
3.16.1 步进器器的一些属性
3.16.2 实例:属性加点器
3.17 WebView
3.17.1 网页视图控件的一些属性
3.17.2 实例:迷你网页浏览器
3.18 Toolbar与Bar Button Item
3.18.1 工具条的一些属性
3.18.2 Bar Button Item的一些属性
3.18.3 工具条的实例
3.19 TableView
3.19.1 TableView的一些属性
3.19.2 TableView的一个简单例子
3.20 SearchBar
3.20.1 搜索条的简单属性
3.20.2 搜索条的简单例子
3.20.3 Search Bar and Search Display Controller例子
3.21 NavigationBar
3.21.1 导航条的实例
3.22 NavigationController
3.22.1 导航控制器的属性
3.22.2 导航控制器实例
3.23 TabBar
3.23.1 TabBar的一些属性
3.23.2 TabBarItem的一些属性
3.23.3 TabBar实例
3.24 TabBar Controller
3.24.1 TabBar Controller实例
3.25 Page View Control
3.25.1 Page View Controller属性
3.25.2 Page View Controller实例
第4章 拖拖看小游戏
4.1 构建主界面
4.2 基本变量和更新函数
4.3 获取滑块的数值并与目标值进行比较
4.4 重头开始玩游戏
4.5 新增得分规则界面实现跳转
4.6 自定义界面
第5章 豆瓣电台
5.1 动手之前先做一些准备
5.2 实现界面
5.3 设置TableView
5.4 异步获取网络数据
5.5 缓存缩略图
5.6 改变封面图
5.7 播放歌曲
5.8 选择歌曲频道
5.9 Cell的显示动画
5.10 播放时间与播放进度
5.11 简单的手势控制播放与暂停
5.12 最后的细节
第6章 任务提醒软件
6.1 软件预览
6.2 创建项目
6.3 设计Cell
6.4 动态展示Cell
6.5 简述MVC
6.6 Model初体验
6.7 导航控制器
6.8 界面跳转
6.9 处理新界面的一些细节
6.10 编辑任务类别
6.11 本地保存数据
6.12 加载本地数据
6.13 重新规划界面
6.14 任务类型的Model
6.15 动态设置任务列表界面的Title
6.16 增加和编辑任务类型
6.17 任务类型的本地化保存
6.18 数据保护措施
6.19 重构Model
6.20 数据本地化NSUserDefaults
6.21 计算还有多少个需要提醒的任务
6.22 任务类型列表排序
6.23 添加任务类型的图标
6.24 对应用做一些美化
6.25 任务截止时间
6.26 添加日期选择器
6.27 本地消息通知
第7章 SpriteKit 简介
7.1 简单聊一聊
7.1.1 聊一聊SKNode
7.1.2 聊一聊SKScene
7.1.3 聊一聊纹理
7.1.4 聊一聊动作(Action)
7.1.5 聊一聊物理系统
7.2 如何学习SpriteKit
7.2.1 创建SpriteKit项目
7.2.2 创建
第一个场景
7.2.3 往场景中添加内容
7.2.4 让文本动起来
7.2.5 场景的转换
7.2.6 使用SKSpriteNode
7.2.7 添加灯光
7.2.8 物理系统
第8章 游戏实战-围住神经猫
8.1 游戏预览
8.2 创建游戏项目
8.3 创建背景
8.4 创建圆点类
8.5 在场景中生成圆点
8.6 神经猫的类
8.7 寻路
8.8 留个小作业
第9章 游戏实战-跑酷熊猫
9.1 创建游戏工程以及导入素材
9.2 创建熊猫类
9.3 显示一个动态的熊猫
9.4 熊猫的跳和打滚
9.5 踩踏平台是怎么炼成的
9.6 创建平台类以及平台工厂类
9.7 平台的移动
9.8 产生源源不断的移动平台
9.9 移除场景之外的平台
9.10 视差滚动背景
9.11 欢迎进入物理世界
9.12 与平台的碰撞
9.13 二段跳的实现
9.14 熊猫的打滚动作
9.15 起跳特效
9.16 苹果以及苹果工厂类
9.17 计分板
9.18 下沉和升降的平台
9.19 加速度
9.20 重置游戏
9.21 声音类
9.22 修复小bug
后记
精彩书摘
4.2 基本变量和更新函数 当我们完成了界面的设置,就要思考一下代码方面怎么编写。我们从主界面上看到我们需要一个目标数字,我们用targetValue来储存它。还需要一个变量用来记录滑块拖动的位置,用来和targetValue作比较,这个变量我们命名为currentValue。从主界面上,我们看到还需要两个变量用来存储总分数和总回合数,我们可以将它们命名为score和round。 //目标数字 var targetValue :Int = 0 //拖到的数字 var currentValue :Int = 0 //总分数 var score :Int = 0 //总回合数 var round = 0 目标数字每个回合随机生成,范围是1至100的整数。 最后我们需要写一个函数用来生成目标数字和更新界面上的targetLabel,scoreLabel,roundLabel的数字。 //界面显示更新函数 func updateLabels(){ //目标值 targetValue = Int(1 + arc4random()%100) //给界面上的目标label赋值 targetLabel!.text = String(targetValue) //给总分label赋值 scoreLabel!.text = String(self.score) //回合数+1 round++ //给总回合数label赋值 roundLabel!.text = String(self.round) //重置滑块的值 slider!.value = 50 } arc4random()这个全局函数会生成9位数的随机整数,对它100取模(%)运算就会得到0至99的之间的随机数,加上1就得到了1至100的随机数。 这时候我们可以来运行一下程序看看效果,因为程序一启动就开始要有个目标值,所以我们的updateLabels函数在viewDidLoad函数内就要运行一次,viewDidLoad函数就是在界面加载完毕的时候运行的函数,代码如下: override func viewDidLoad() { super.viewDidLoad() //首次运行时生成目标值并更新labels updateLabels(); } ……
前言/序言
Swift语言实战晋级 epub pdf mobi txt 电子书 下载 2024
Swift语言实战晋级 下载 epub mobi pdf txt 电子书 2024