时间回到一年前,在 WWDC 2019
上,Apple
推出了 SwiftUI
,当时的会场迎来了 WWDC
久违的热烈的掌声和欢呼声。
Apple
虽然以设计为其灵魂,并且在 UI
设计和用户体验方面也是一直引领着业界的方向,但在面向开发人员方面,其糟糕的 UI 开发体验却经常被广大的开发人员所诟病。Apple
也一直在探索,但不论是原始的用命令式代码(frame / VFL
)写 UI
,还是 Xib/Storyboard
,开发体验都与现代的 UI
开发方式相较甚远。
前端近几年的发展异常迅猛,各种开发框架层出不穷,也给端侧开发带来了许多新的优秀的思想:声明式 UI、组件化开发、状态管理机制、单向数据流、热重载等等。其高效的开发效率不断地冲击着 native 端侧的市场,同时充分利用这些思想构建的 React Native
、Flutter
等跨平台方案更是不断在侵蚀 iOS/Android
开发的生存空间。
在这样一种大环境下,Apple 推出了 SwiftUI 和 Combine。不能说是适时,甚至可以说已经有点晚了。有许多并非有利的因素存在:
• React Native
、Flutter
已经发展了一段时间,有先入为主的优势,特别是后起之秀 Flutter
,其优异的特性更是让开发者们趋之若鹜;而它们最大的亮点即跨平台
正是 SwiftUI
目前所不具备的;
• 移动开发发展到这个阶段,已不再有增量市场,剩下的都是存量。蛋糕就这么大,SwiftUI
能分多少?
• 大型 App 基本上已经定型,而且很多都是掺杂着各种技术栈,再增加一种技术栈,除了玩票,似乎意义并不是太大;
• SwiftUI
太年轻了,即使是 Swift
,也还是太年经了,虽然有 Apple
这个大靠山,但这个大靠山同时也为它画了一个魔圈圈。Swift
支持全平台尚且步履蹒跚,SwiftUI
跨平台,有可能吗?先打个巨大的问号;
• ...... 欢迎补充
话虽如此,Apple
还是推出 SwiftUI
,这也清楚地表明,Apple
在积极地拥抱变化,并且早先也意识到这些问题,毕竟这样一个框架并非一时就能完成的。可以看出 Apple
的决心,也相信 Apple
能让这个优秀的框架走得更远。
WWDC 20
还有十几天的时间,相信到时候 SwiftUI
也能给我们带来更多惊喜。我们小集也联合了一些 SwiftUI
的 玩友
一起推出这个系列,和大家一起来玩这个有意思的框架。系列的路线还是以短小的文章为主,每个 Tip 描述一个知识点,目的是能让读者朋友是快速了解 SwiftUI
各种有趣的功能。
Copyright© 2013-2020
All Rights Reserved 京ICP备2023019179号-8