/* Page prose (zh-Hans) */
"Overview" = "# 经典 vs 现代\n\n你现在已经从头到尾认识了两套工具。经典模型给了你队列、组、信号量和 operation；现代模型给了你 `async`/`await`、任务、actor 和 `@MainActor`。\n\n那么，一个在职的 iOS 开发者会问一个诚实的问题：*当我坐下来写真实的代码时，我该用哪一个，又该拿我 app 里已经堆积的一大堆 GCD 怎么办？*\n\n本章通过拿一个普通的任务，用两种方式并排解决它来回答这个问题，然后把每一个经典理念映射到它的现代替代品，并给出一个你周一真的能照着做的迁移计划。\n\n---\n\n## 你将学到\n\n* **同一个真实任务**被解决两次，经典方式（GCD + completion handler + `DispatchGroup`）和现代方式（`async`/`await` + `async let`），让你能感受到可读性、错误处理和纯粹的代码行数上的差异。\n* 一张从每个经典工具到它现代对应物的**概念图**。\n* 诚实地讲，**经典模型什么时候仍然是正确的选择**。\n* 针对现有 GCD 代码库的一套**务实的迁移策略**。\n* 一份值得留着的**“哪个工具用在何时”**小抄。\n\n翻到下一页，认识我们将用两种方式解决的那个任务。\n\n第 1 / 8 页  |  [下一页: 任务](@next)";
