LESSON 01 / 576 分钟

一张图,理解苹果开发

你已经会开发应用。现在要换的是语言、UI 框架和运行环境,而不是重新学习所有编程知识。

用你的前端经验理解

TypeScript → Swift;React → SwiftUI;浏览器 → 操作系统;Vite + DevTools + IDE → Xcode。它们只是职责类比,并非一一兼容。

为什么需要它

假设你要做一个能离线保存文章的阅读 App。网页里经常一起出现的页面、请求和 localStorage,在原生工程里仍是不同职责。先把需求分到语言、界面、系统服务与分发四层,遇到问题才能知道应该查 Swift 语法、SwiftUI 文档,还是工程配置。学习顺序应围绕一个可运行功能推进,而不是先背完整个框架目录。

它是怎样工作的

一次点击可以这样追踪:SwiftUI 的 Button 收到动作,Swift 函数验证输入,存储服务写入模型,状态变化让列表更新。网络、通知和文件访问由系统框架提供;Xcode 把这些代码与资源构建为应用。它们并不是前后端的划分,原生 App 也可能需要你的 Hono 或 NestJS 后端来维护业务账号与共享数据。

把关键概念连起来

1

语言层

Swift 负责表达数据和逻辑;它本身不是 UI 框架,也不只用于苹果平台。

2

框架层

SwiftUI 以声明式方式描述 UI;UIKit 服务 iOS、iPadOS、tvOS 等;AppKit 面向 macOS。框架能互相桥接。

3

平台层

同一份业务逻辑可以复用,但窗口、导航、输入方式、权限与分发规则随平台变化。

拆解“稍后阅读”功能

  1. 输入网址:界面层负责输入框、键盘和保存按钮;网址是否合法属于可独立测试的 Swift 逻辑。
  2. 保存文章:本地仓库负责持久化;服务器抓取文章正文是另一项服务,可以稍后接入。不要把请求写进 View 的 body。
  3. 展示和恢复:列表读取仓库中的记录。关闭 App 再打开后仍然存在,才证明持久化闭环成立;多个设备一致则是后续同步问题。

这里需要你亲自判断

不要把 SwiftUI 当成换了语法的 React Native:它使用苹果的框架与平台能力,没有 DOM 和 CSS。

做一个小练习

画出一个阅读清单 App 的四层:Swift 数据模型、SwiftUI 页面、系统存储、iOS 运行环境。

  1. 画出输入、验证、保存、显示四个节点,在每个节点旁标出使用的语言或框架。
  2. 给“断网仍能添加文章”选一个数据所有者,并说明同步服务暂不可用时的行为。
展开参考思路与验收标准

一份合理答案是:SwiftUI 收集输入,Swift 模型保存网址和标题,本地仓库先落盘,列表观察数据变化。后端和 iCloud 都不是首个离线闭环的必要条件。能把“保存失败”定位到仓库边界,就比记住十个框架名称更有价值。

Swift、SwiftUI 与 Xcode 分别是什么?

继续查阅官方资料
Apple Developer 官方资料

本课聚焦核心认知。具体 API、系统要求与发布政策,以当前官方文档和工程验证为准。

答对理解题后即可标记完成