首先,Swift 的语法糖虽然多,也不一定要都看过了才能上手 SwiftUI 吧。和 SwiftUI 主要相关的语法糖就是 Function Builder 和属性装饰器:前者很像 React ,看起来是声明式结构,实际上是若干 buildXXX 的函数调用;后者是一个语法糖,让你写各种 State<XXX>的时候能方便一点。
然后关于几个属性装饰器的区别,看
/t/857084 应该能清楚些。
其实如果你有前端 MVVM 框架的经验的话,到这个阶段已经可以自己写小 App 了,遇到什么问题多用英文搜搜 StackOverflow. 虽然国内 SwiftUI 热度不高,但国外经过这几年,资料已经比较丰富了。有一点理解之后,看看去年 WWDC 的 Demystify SwiftUI 这个 session (
https://developer.apple.com/videos/play/wwdc2021/10022/).
SwiftUI 实现数据绑定的核心是 Combine 这个库,它的理念比较值得学习。再然后就是一些架构方面的东西(比如 TCA ?)其实和前端框架的学习路线挺像,但因为 Swift 语言本身要素很多,且原生平台 API 更丰富,所以能玩出更多花样
今年 WWDC 苹果有个 Sample App ,源码在这里:
https://github.com/apple/sample-food-truck