来源:Github等
编辑:鹏飞
本文转自公众号:新智元
刚刚结束的苹果WWDC推出了一个对于开发者非常重要的框架:SwiftUI。
SwiftUI是一个非常方便快速的构建UI的框架,与最新Xcode设计工具无缝协作,可为所有苹果设备构建UI。开发者通过SwiftUI,利用Swift语法就能够完成代码和设计的同步。
Swift是苹果最新的开发语言,有人呼吁谷歌取代TensorFlow的Python。目前在TOIBE排名18位:
在RedMond排名11
SwiftUI还提供对动态类型、暗黑模式、本地化和可访问性的自动支持。
SwiftUI都更新了什么?
此次更新主要有5点:
如果你刚刚接触SwiftUI,刚开始你可能需要适应一下UIKit的独特风格,一旦你适应了,接下来的过程就一马平川了。
SwiftUI解决了哪些问题?
虽然Storyboards和XIB很有用,但并不是所有人都喜欢。比如在使用源码控制时就很麻烦,会导致代码和可视化布局之间移动变得非常困难;使用动作和outlets时过于依赖flaky系统的连接。
而SwiftUI通过4种方式,解决了上述问题:
SwiftUI带来了哪些好处?
让Xcode for iPad更上一层楼
开发者对Interface Builder的抱怨不是一天两天了,它大大增加了分解视图块以及从视图控制器(view controller)使用视图的工作量,导致出现体积臃肿的视图控制器,编辑起来也如同噩梦。
此前,无论什么尺寸屏幕的iPad,总是很难将Interface Builder的大小放到iOS上。而拥有更简单,更快速,更安全的SwiftUI为开发人员实现真正的平台独立性迈出了一大步。
人人都能编程
SwiftUI继承了Swift的理念:每个人都可以编程。现在,一个全新的用户界面系统诞生,有助于避免新开发人员遇到的大量问题。
尽可能的依赖工具
通过消除源码控制的痛点、消除对UIKit的严重依赖、消除Interface Builder可能遇到的一些连接混淆,苹果希望开发者更多的使用Swift,尽可能的依赖工具而不是纠结于一些不必要的事情。
感受一下SwiftUI的代码风格
Github一个repo整理了在WWDC 2019发布的SwiftUI布局框架的一些官方示例:
SwiftUI Essentials
创建和组合视图:
创建列表和导航栏:
处理用户输入:
Drawing and Animation
绘图路径和形状:
动画视图和过渡
App Design and Layout
复杂界面组合:
使用 UIControls:
Framework Integration
使用 UIKit:
使用SwiftUI之前要注意的事情
首先,SwiftUI目前只支持10.15 beta以及更新的macOS系统,当然10.15 beta已经是目前最新了。
其次一些可能出现的小问题也是需要注意的。比如,它只支持Swift,你不能在Obj-C里使用SwiftUI;SwiftUI目前还不是很成熟,正在从事iOS开发的程序员可能更应该继续使用Obj-C,直到SwiftUI足够成熟。
你对SwiftUI有哪些期待呢?敬请留言吧!
参考链接:
https://github.com/Jinxiansen/SwiftUI/blob/master/README_CN.md