Basic 基础部分

📖 学习内容概览

欢迎来到 Swift 编程之旅的第一站!基础部分将带你掌握 Swift 的核心概念和编程范式。这些知识是后续高级主题和实战应用的基石。


🎯 你将学到什么

完成本部分学习后,你将能够:

  1. 理解 Swift 类型系统 - 结构体、类、枚举、协议的核心区别
  2. 掌握值类型与引用类型 - Swift 的默认值语义
  3. 使用协议面向编程 (POP) - Swift 最独特的设计理念
  4. 编写泛型代码 - 可复用的类型安全代码
  5. 理解错误处理 - do/catch/try 最佳实践

📚 基础部分导航

本部分涵盖以下 12 个章节:

#章节说明难度预计时间
1变量与表达式let/var、类型推断、字符串插值🟢 简单30 分钟
2基础数据类型Int、Double、Bool、String、集合类型、可选类型🟢 简单45 分钟
3控制流if/else、switch/case、for-in、guard、while🟢 简单30 分钟
4函数参数标签、默认值、可变参数、函数类型、嵌套函数🟡 中等45 分钟
5枚举定义、关联值、原始值、递归枚举🟡 中等45 分钟
6结构体定义、属性观察器、值类型语义、mutating🟡 中等45 分钟
7类与对象继承、初始化、ARC、类型转换🟡 中等60 分钟
8协议定义、扩展、关联类型、POP 设计理念🟡 中等60 分钟
9泛型泛型函数、类型约束、where 子句🟡 中等45 分钟
10错误处理do/catch/try、throws、defer、Result 类型🟡 中等45 分钟
11闭包闭包语法、捕获值、逃逸闭包、高阶函数🟡 中等45 分钟
12并发编程async/await、Actor、Task、Sendable🔴 困难60 分钟

总计: 12 章 | 总时间: 约 8 小时 15 分钟


🔗 前置要求

无需 Swift 基础! 本部分从零开始教学。

建议具备:

  • 基本编程概念(变量、循环、函数)
  • 任意编程语言经验(Python、JavaScript、Java、Rust 等)
  • 如果你熟悉 Hello Rust 的教程风格,会发现结构一致

📈 学习路径

变量与表达式 → 基础数据类型 → 控制流 → 函数 → 枚举 → 结构体 → 类与对象 → 协议 → 泛型 → 错误处理 → 闭包 → 并发编程

🎓 Swift 核心特性速览

Swift 区别于其他编程语言的核心特性:

特性说明与 Rust 对比
默认不可变 (let)变量默认不可变,需要 var 才可变与 Rust 一致 (let vs let mut)
值类型优先 (struct)默认使用值类型,类用于特殊场景Rust 只有结构体,没有类
协议面向编程 (POP)用协议+扩展替代类继承Rust 的 trait 类似但无默认实现
可选类型 (Optional)? 处理空值的类型安全机制Rust 的 Option<T>
async/await语言级并发支持Rust 异步基于 Future trait
ARC 内存管理自动引用计数Rust 的所有权系统

✅ 学习检查点

完成本部分后,你应该能够:

  • 使用 letvar 正确声明变量
  • 使用可选类型安全地处理空值
  • 使用枚举+关联值建模多状态数据
  • 在结构体和类之间做出正确选择
  • 定义协议并使用扩展提供默认实现
  • 编写泛型函数和泛型类型
  • 使用 do/catch/try 处理错误
  • 使用闭包编写函数式代码
  • 使用 async/await 编写并发代码
  • 理解 Sendable 和 Actor 隔离

🎓 实践项目

建议练习:

  1. 创建一个简单的命令行计算器(变量、函数、控制流)
  2. 实现一个联系人管理工具(结构体、类、集合类型)
  3. 编写一个异步网络数据获取程序(并发编程、错误处理)

➡️ 下一步

完成基础部分后,继续学习 高级进阶 部分,你将学习:

  • JSON 处理(JSONSerialization、Codable、SwiftyJSON)
  • 文件操作(FileManager、临时文件)
  • 系统服务(网络可达性、系统配置)
  • 异步编程(Task、SwiftNIO 集成)
  • 环境配置(swift-dotenv)

准备好了吗?让我们开始 变量与表达式 的学习! 🚀