Swift核心技术与实战- 极客时间课程推荐/优惠

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 开发模式等方面的实战经验。

推荐

超级访谈:对话毕玄 - 极客时间课程推荐/分享/优惠/折扣
超级访谈:对话毕玄
从非专业到CEO,比小说更精彩的成长复盘
毕玄贝联珠贯创始人兼CEO,前阿里P10
专栏 | 10841人已学习
优惠价¥59原价:99
官网优惠购买
QCon 北京 2024 · 大模型篇 - 极客时间课程推荐/分享/优惠/折扣
QCon 北京 2024 · 大模型篇
大模型正在重新定义软件
InfoQQCon 组委会
视频课 | 247人已学习
优惠价¥19原价:99
官网优惠购买
徐昊 · AI时代的软件工程 - 极客时间课程推荐/分享/优惠/折扣
徐昊 · AI时代的软件工程
大师特训,用 LLM 重塑开发范式
徐昊Thoughtworks中国区CTO
专栏 | 4722人已学习
优惠价¥98原价:399
官网优惠购买
从0开始学游戏开发 - 极客时间课程推荐/分享/优惠/折扣
从0开始学游戏开发
你的游戏开发入门第一课
蔡能原网易游戏引擎架构师,资深游戏底层技术专家
专栏 | 37684人已学习
优惠价¥59原价:129
官网优惠购买
人人都能学会的编程入门课 - 极客时间课程推荐/分享/优惠/折扣
人人都能学会的编程入门课
每天 10 分钟,轻松学编程
胡光原百度高级算法研发工程师
专栏 | 19747人已学习
优惠价¥59原价:99
官网优惠购买
如何成为学习高手 - 极客时间课程推荐/分享/优惠/折扣
如何成为学习高手
北大学霸带你10倍提升学习效率
高冷冷北大硕士、知乎64万关注大V
专栏 | 31491人已学习
优惠价¥89原价:129
官网优惠购买