Swift核心技术与实战--极客时间课程推荐/优惠
从理论到实践,快速掌握Swift开发
视频课 | 120讲 | 21150人已学习
优惠价¥59原价:129
官网优惠购买
版权声明
本站非极客时间官网,与官方无任何关系。我们不提供课程下载或详细内容,仅作为课程分享和推荐平台。我们鼓励大家支持正版,尊重创作者的劳动成果,这样不仅能帮助创作者持续产出优质内容,也能让自己获得更好的学习体验。请通过官方渠道购买和学习课程,感谢您的理解与支持。
课程详情
你将获得:
- 掌握 Swift 5 基础语法和新特性;
- 理解 Swift 多线程编程等难点;
- 学会和 Objective-C 进行混合编程;
- 熟练使用 Swift 开发 iOS 应用。
课程介绍
随着 Swift 5.0 的发布,ABI 的稳定,“苹果什么时候开始锁定 Objective-C 的 SDK,不再为它增加新的 API?什么时候开始用 Swift 特性更新现有的 Objective-C SDK?”这些都成为了可以想象的事情。各个公司用 Swift 完全替代 Objective-C 的趋势越来越明显。
由于Swift 相对于 Objective-C 在开发范式上仍然会有较大的区别,所以初学者编程思维转变较为困难。另外,Swift 从发布到现在经历了五个大版本,十几个小版本的迭代,语法和语言特性也在不断变更,导致网上很多学习资料良莠不齐。
因此,极客时间联合美团点评高级技术专家张杰老师一起开设了这门课程。本课程基于 Swift5.0版本进行讲解,除了Swift基础语法及新特性、与Objective-C的异同等基础知识点,课程还涉及多线程编程、Swift与Objective-C混合编程、SwiftUI、常用第三方库等更贴合实战场景等知识点。最后,我们会通过一个商场实战项目,将课程关键知识点串联起来,帮你完成从Objective-C 开发者到 Swift 开发者的平滑过渡。
课程目录
第一章:Swift简介
- 04 | Swift和Objective-C的主要区别
- 06 | REPL:Swift交互式解释器
- 02 | 内容综述
- 03 | Swift版本历史和各版本特性快览
- 01 | 课程介绍
- 05 | swiftc:强大的命令行工具
- 07 | Playground:Swift学习的乐园
第二章:基本数据类型
- 08 | 如何在Swift中定义常量和变量
- 09 | Swift中的数值类型
- 10 | 如何使用Tuple组合多个值
- 11 | 如何在Swift中使用Optional
- 12 | Optional实现原理探究
- 13 | 如何在Swift中创建和初始化字符串
- 14 | Swift字符串的常见操作
- 15 | 如何使用索引访问和修改字符串
- 16 | 如何在Swift中获取子串和进行字符串比较
第三章:运算符
- 17 | 赋值和算数运算符
- 18 | 在Swift里如何处理算术结果溢出
- 19 | 为了Optional:合并空值运算符
- 20 | Swift的新宠:区间运算符
- 21 | 强大的位运算符
- 22 | 位运算符应用举例(1)
- 23 | 位运算符应用举例(2)
- 26 | 如在Swift中定义自己的运算符
- 25 | 如何为类和结构体自定义运算符实现
- 24 | 运算符优先级和结合性
第四章:流程控制
- 31 | Swift中的模式和模式匹配
- 30 | 如何使用guard来改善你的条件判断
- 29 | 如何在Swift里进行控制转移
- 28 | 更加强大的switch
- 27 | 如何在Swift里进行循环控制
第五章:集合类
- 32 | 在Swift中创建数组的N种方式
- 33 | 访问和操作数组:遍历和索引
- 34 | 访问和操作数组:查找操作
- 35 | 访问和操作数组:添加和删除
- 36 | 访问和操作数组:ArraySlice
- 37 | 访问和操作数组:重排操作
- 43丨Set:执行Set计算和判断
- 42丨Set:访问和修改
- 41丨Set:定义和创建
- 40丨如何用数组来实现栈和队列
- 39丨深入理解数组:底层实现探究
- 38丨访问和操作数组:拼接操作
- 48 | 深入理解字典:底层实现探究
- 47 | 字典的常见操作
- 46 | Dictionary:Swift中的字典类型
- 45 | 深入理解集合:底层实现探究
- 44 | 实现自己的集合算法
第六章:函数和闭包
- 54 | 逃逸闭包和自动闭包
- 53 | 闭包捕获值
- 52 | 闭包和闭包表达式
- 51 | 函数类型和内嵌函数
- 50 | 函数的形式参数和返回值
- 49 | Swift中如何定义和使用函数
- 55 | 如何使用Swift中的高阶函数
- 56 | 函数式编程(1)
- 57 | 函数式编程(2)
第七章:面向对象编程
- 58 | Swift面向对象概述
- 62 | 像访问数组和字典一样访问类和结构体:下标和下标重载
- 61 | 如何为类、结构体以及枚举添加方法
- 60 | 如何为类、结构体以及枚举添加属性
- 59 | 枚举从此站起来了
- 66 | 如何为现有的类、结构体、枚举或协议添加新功能
- 65 | 如何在Swift中实现多态和进行类型转换
- 64 | 如何在Swift中实现继承
- 63 | 如何进行类的初始化和反初始化
- 70丨面向协议编程初探(2)
- 69丨面向协议编程初探(1)
- 68丨协议和扩展
- 67丨Swift中的协议
第八章:泛型
- 71丨泛型的发展历史与泛型的概述
- 72丨如何在Swift中定义泛型函数
- 73丨如何在Swift中定义泛型类型
- 74丨Swift泛型中的类型约束
- 77 | 泛型下标
- 76 | 如何为泛型定义要求:where字句
- 75 | 为了协议:关联类型
- 78丨泛型编程思想浅谈
第九章:多线程
- 80 | 更高级的抽象:Cocoa Operation
- 79 | 如何在Swift中创建一个线程
- 81丨多线程编程新思路:GCD概览
- 82 | 如何使用GCD:基本操作指南
- 87 | 拓宽思路:其他常见的多线程编程模式
- 86 | 实践出真知:多线程典型应用场景分析
- 85 | 如何保证线程安全和同步
- 84 | 深入理解GCD:源码剖析
- 83 | 深度使用GCD:高级特性指南
第十章:SwiftUI
- 88 | SwiftUI:Apple全新的UI框架
- 89 | SwiftUI设计工具使用指南
- 90 | 如何使用SwiftUI构建可复用的组件
- 91 | 如何用SwiftUI实现动画
- 92 | 深入理解SwiftUI:实现原理探秘
第十一章:其他话题
- 97 | Swift中的内存安全性
- 96 | Swift中的自动引用计数
- 95 | 不透明类型
- 94 | Swift中代码访问权限控制
- 93 | 如何在Swift里进行错误处理
第十二章:第三方库
- 98 | 如何在项目中进行网络请求
- 99 | 如何进行JSON的序列化和反序列化
- 100 | 没有最方便,只有更方便:对Swift标准库的一些扩展
- 101 | 如何在Swift中进行自动布局
- 102 | 如何进行图片加载和缓存
- 103 | 以一种优雅安全的方式使用资源文件
- 104 | 如何在项目中将内容分享到社交平台
第十三章:Swift和Objective-C混合编程
- 108 | Swift和Objective-C混合编程踩坑指南
- 107 | 如何在Swift和Objective-C中相互调用
- 106 | 桥接问题
- 105 | Swift和Objective-C的运行时简介
第十四章:实战开发
- 111 | 编写mock API
- 110 | 商城整体架构、UI设计和模块拆分
- 109 | 如何搭建一个iOS Swift工程
- 112 | 登录注册页模块开发
- 113 | 商城列表页模块开发
- 114 | 商城详情页模块开发
- 115 | 商城个人中心页模块开发
- 116 | 商城订单页模块开发
- 117 | 结束语
- 120|加餐3:Swift面试中的要点注意事项&结课测试
- 119|加餐2:Swift KVC
- 118|加餐1:可选链
作者介绍
张杰,美团点评高级技术专家,有超过10年的开发经验,8年多的客户端开发经验,先后任职于土豆、百度等公司。目前在负责客户端架构、基础设施等方面的工作。
参与过美团、点评、美团旅行等 App 的开发工作,曾经在公司进行过 Swift 的布道,还带领过团队用 Swift 开发过一款独立的 App,积累了丰富的 Objective-C 往 Swift 迁移, Objective-C 和 Swift混编、Swift 开发模式等方面的实战经验。