为什么还要从基础重新学 Swift?
很多转岗 iOS 开发的学习者容易陷入一个误区:觉得掌握了 Objective-C 就能无缝切换,或者直接跳过语法直奔UIKit。然而,Swift 作为一门现代语言,其核心理念与 OC 有着本质区别,尤其是强类型系统和可选类型(Optional)的设计,往往是新手踩坑的重灾区。这套课程并非泛泛而谈,而是精准针对“语法盲区”和“思维转换”这两个核心痛点。它解决的正是你写代码时经常遇到的“类型不匹配”、“空指针崩溃”以及“逻辑控制混乱”等问题。如果你发现自己对 Swift 的底层数据类型理解模糊,或者在处理复杂数据结构时力不从心,那么从最基础的常量、变量和类型系统重新梳理,是最高效的“补课”方式。
适合谁看?建议从哪块切入?
这门课最适合两类人群:一是刚刚接触 Swift,希望建立扎实语法地基的零基础或跨语言初学者;二是有其他编程语言经验,但想系统查漏补缺、纠正 Swift 特殊语法规则的技术学习者。特别需要注意的是,课程的前半部分涵盖了常量变量、数据类型、字符串、元组以及 nil 的应用,这些是后续所有高级特性的基石,切勿跳读。
建议先看前 10 节关于“数据本质”的内容,重点理解 Swift 的类型安全和可选类型的逻辑;接着攻克第 12 到 15 节的数组与字典,这是处理集合数据的核心;最后结合第 16 到 18 节的控制流和函数,形成完整的代码逻辑闭环。课程中提到的 Playground 工具非常值得利用,它能让抽象的语法概念在即时反馈中变得直观。
学完能做什么?如何配合资料练习?
完成这套内容后,你将能够独立编写结构清晰的 Swift 脚本,熟练运用数组、字典等集合类型进行数据处理,并准确使用条件语句和循环控制程序流程。更重要的是,你将建立起符合 Swift 规范的编程思维,为后续学习 SwiftUI 或 UIKit 界面开发打下坚实的底层基础。关于配套练习,课程资料中提供的源代码是理解关键逻辑的重要参考,但切忌直接复制粘贴。建议在观看每一节后,尝试关闭源码,自己从零实现一遍核心逻辑,比如手动创建一个包含不同类型元素的数组并进行遍历操作,或者编写一个处理可选值的安全解包函数。只有通过亲手编码产生的“肌肉记忆”,才能真正填补你的能力缺口。
课程目录
1 Swift简介和开发环境搭建(学员请加QQ群索取全部源代码) (04:51) 2 常量和变量 (05:34) 3 数据类型 (13:22) 4 Swift中的字符串 (13:09) 5 XCode6的新玩具:playground (06:26) 6 Swift中的字符 (09:03) 7 元组数据类型(tuples) (07:09) 8 nil的应用 (02:06) 9 类型别名(自定义类型) (02:01) 10 类型转换基础 (04:35) 11 操作符基础 (05:44) 12 数组的创建和初始化 (13:59) 13 枚举数组元素的方法 (05:05) 14 增加和删除数组元素 (06:17) 15 字典(Dictionary) (27:26) 16 条件语句(if、switch) (24:32) 17 循环语句(for、while) (11:03) 18 函数(1) (12:00) 19 函数(2) (32:55) 20 闭包表达式 (21:44) 21 尾随闭包 (14:29) 22 闭包捕获变量(常量) (07:29) 23 枚举类型(1):基础知识 (08:44) 24 枚举类型(2):添加与枚举成员相关的值 (11:46) 25 枚举类型(3):设置枚举类型的原始值 (15:02) 26 类与结构体的定义与实例创建 (11:35) 27 值类型和引用类型 (15:11) 28 如何判断两个变量(常量)是否引用了同一个类对象 (06:30) 29 存储属性 (14:20) 30 可读写的计算属性 (14:47) 31 只读计算属性 (06:46) 32 属性观察器 (08:15) 33 静态属性 (07:44) 34 方法基础 (04:07) 35 方法的局部参数名和外部参数名 (08:35) 36 self关键字 (06:09) 37 方法的变异(mutating) (10:29) 38 类型方法 (05:33) 39 没有参数的构造器 (05:07) 40 构造器的内部参数和外部参数 (06:56) 41 构造器重载 (04:46) 42 默认构造器和存储属性初始化 (11:51) 43 类的析构器 (02:48) 44 结构体的逐一成员构造器(结构体的默认构造器) (07:51) 45 为类和结构体增加下标(Subscript)操作 (10:01) 46 类的继承 (08:49) 47 重写方法 (05:08) 48 重写属性 (07:26) 49 重写属性观器 (06:52) 50 阻止重写方法和属性 (03:33) 51 便利构造器与默认参数值 (12:32) 52 构造器和便利构造器的继承规则 (11:04) 53 为什么子类构造器必须调用父类的构造器 (09:24) 54 ARC机制 (05:47) 55 循环强引用 (12:45) 56 使用弱引用解决循环引用死锁问题 (06:45) 57 无主引用 (08:30) 58 闭包、强引用和对象释放 (11:51) 59 使用可选链访问属性 (04:50) 60 使用可选链访问方法 (05:16) 61 使用可选链方法下标 (06:15) 62 多层连续调用可选链 (04:34) 63 对方法返回值使用可选链 (02:58) 64 类型检测(is关键字) (03:56) 65 类型强行转换(as关键字) (08:59) 66 AnyObject类型 (04:25) 67 Any类型 (08:29) 68 扩展概述 (05:13) 69 扩展计算属性 (11:35) 70 扩展构造器 (05:51) 71 扩展方法 (05:44) 72 扩展下标 (08:38) 73 扩展嵌套类型 (08:32) 74 协议(Protocol)简介 (02:31) 75 实现协议中的属性 (10:01) 76 实现协议中的方法 (07:51) 77 实现协议中的突变方法 (03:42) 78 协议的作用 (07:10) 79 用扩展向类型添加协议 (04:19) 80 通过扩展补充协议声明 (03:37) 81 集合中的协议 (04:58) 82 协议的继承 (04:07) 83 协议合成 (07:18) 84 可选协议 (09:01) 85 为什么要在Swift语言中引入泛型 (04:25) 86 泛型函数 (05:37) 87 类型参数 (05:19) 88 用泛型实现Stack (07:45) 89 扩展Stack (04:13) 90 对泛型进行类型约束 (06:25) 91 关联类型 (04:39) 92 用where子句进一步约束类型 (13:29) 93 高级操作符:按位取反 (05:23) 94 高级操作符:按位与 (02:49) 95 高级操作符:按位或 (02:35) 96 高级操作符:按位异或 (02:49) 97 高级操作符:按位左移和按位右移 (17:24) 98 高级操作符:值的上溢出 (05:00) 99 高级操作符:值的下溢出 (03:54) 100 高级操作符:零溢出 (01:46) 101 运算符的优先级和结合性 (03:24) 102 二元操作符函数(二元操作符重载) (08:36) 103 一元操作符函数(一元操作符函数重载) (03:17) 104 自加(++)和自减(--)操作符函数 (16:12) 105 组合操作符(+=、-=等)函数 (03:59) 106 等值操作符(==和!=)函数 (04:46) 107 自定义操作符(据说是Swift语言中最牛逼的功能之一) (12:26) 108 为自定义操作符指定结合性和优先级 (05:18) 109 swift语言到底能做神马东西 (19:10) 110 用swift编写一个可以浏览网页的APP (14:53)





