SwiftUI尝鲜
一个星期前苹果推出了SwiftUI这个全新的UI框架。《SwiftUI尝鲜》是我在公司移动端内部分享的一个课题,在这里整理一下分享的大致结构和PPT内容。
SwiftUI简介
2019年 WWDC 大会上,苹果宣布了基于Swift的全新的UI开发框架-SwiftUI,让开发者用更少的代码编写相同的UI,开发体验有了很大的提升。
声明式语法
learn one, apply anywhere
实时预览
缺点:目前最低支持iOS13。
目前UI开发面临的挑战
从 iOS SDK 2.0 开始,UIKit 已经伴随广大 iOS 开发者经历了接近十年的风风雨雨。
UIKit 提供的是一套符合直觉的,基于控制流的命令式的编程方式。
负面影响:Controller 承担了绝大部分职责,如果没有妥善管理,会导致状态管理越来越复杂,难以控制。
声明式界面开发方式
声明式的意思就是让我们描述我们需要一个什么样的界面,而不是告诉计算机一步一步要干什么。
比如:如果我们需要添加一个“Hello World”的标签,对于传统的UIKit,它需要负责“创建label”, “设置文字”, “将其添加到view上”:
1 | func viewDidLoad() { |
相对应的,使用SwiftUI我们只需要告诉SDK我们需要一个文字标签:
1 | var body: some View { |
SwiftUI开发实战
通过开发下面的功能,了解SwiftUI的具体使用。
这是分享的重点内容。
SwiftUI vs Flutter
声明式语法
Flutter跨平台性更强,SwiftUI更能兼容平台特性
SwiftUI代码更为简洁
Flutter更成熟