Apple 的产品对于我而言,软体比硬体更有吸引力。如果说硬体是打基础的话,软体则是装修。硬体是天花板,但没有软体一切都等于 0 。昨天晚上看 WWDC2019 看到 3 点半,除了tvOS 以外,每个 OS 都给了我眼前一亮的感觉,像 macOS 的 Sidecar ( RIP Duet Display ),iOS 的 Darkmode, ARkit3 ,watchOS 的噪音检测,全新的 「watch Store」,以及全新的 ipadOS 系统。这些都是 Apple 为用户们优化的体验,似乎开发者还是以前的开发者,除了新增了几个 API 以外。但是,今年的 WWDC 大会主题是 「Write code. Blow minds.」,WWDC 也果然还是一个开发者大会,随即发布的 Project Catalyst 以及 SwiftUI 彻底点燃了整个会场。整个 2 个半小时下来,最让我有感觉的,还是 SwiftUI 。
与 UIkit 不同,SwiftUI 用声明性的语法来很简单的声明界面的逻辑。比如说如果你想写一个列表的话,使用 SwiftUI 一切都可以在代码里面单独进行声明,包括间距,字体,颜色,甚至动画等等。
上面这几行代码就描述了一个列表,我不知道你们的感觉是什么,我第一眼看到这几行代码,有种看 CSS 的感觉。从这几行写列表的代码来看,主要的工作都是描述控制项的内容,这对写代码的人以及读代码的人都是极好的。但是写这么一点代码不代表最后就只有这一点代码,Xcode 会自动加入支持 Darkmode 的代码,根据不同的构建设备生成不同的控制项。这一内容我们先放在这里,等下再说。
2. 设计工具