從 Swift1.2 就看好 Swift,逐漸在項目中使用,而且以後的代碼徹底用Swfit開發。享受到了便利,也遇到了不少坑,痛並快樂着。WWDC19 最使人興奮的無疑是SwfitUI,這個即將統一Apple平臺(iOS, padOS, macOS, TVOS, WatchOS)的聲明式UI框架。也恰好做爲此次內部 Tech Share 的分享,美滋滋。git
這是一場無關語言的分享,着重經過了解 SwiftUI 從而對於聲明式UI前景的探索,以及蘋果對於自家多平臺生態的佈局github
這就開始吧!編程
由於聲明式 UI已經成爲主流,React、Flutter、Jetpack Compose、SwiftUI。swift
受夠了Storyboard 和 每次更改都須要運行才能看到結果。app
實時更新 live preview, (不能給上廁所找藉口了),不但能夠預覽,還能夠反向生成代碼,真正的微調, 多屏幕預覽,一次適配全部機型。框架
最知名的就是SQL了,SQL 最大的特色就是隻聲明我想要什麼(What) , 就是不說怎麼作(How)。聲明式編程多和鏈式想嵌套,每次返回操做對象,對操做對象一直操做。佈局
什麼是聲明式UI:post
聲明式UI描述的不是命令,是直接描述界面是怎樣的,而忽略其實現細節。字體
React、Flutter 包括剛出的 SwiftUI 都選擇了聲明式的 UI,從一個側面也印證了這一點。摒棄了將 IB 生成的 UI 內容存儲在 XML 的這種很老土的作法。ui
實戰例子選取了蘋果 SwiftUI Tutorials 實現了經常使用組件 List (UITableview),以及點擊事件跳轉到詳情的操做。整體涵蓋了經常使用的UI和Action。而且每節課課後有 Check Your Understanding 幾個簡單題目檢測你的理解。
有理由相信 蘋果能夠考慮把 SwiftUI 內置在 APP 包內,使開發者能夠更輕易地兼容低版本的操做系統。
The shortest path to building great apps on every device
參考: