美文网首页
What is SwiftUI?

What is SwiftUI?

作者: 老鹰_ | 来源:发表于2020-11-05 10:37 被阅读0次

SwiftUI是一个用户界面工具包,它允许我们以声明的方式设计应用程序。这是一种很好的说法,我们告诉SwiftUI希望的页面外观和工作方式,它去考虑和实现我们提出的需求。

与命令式UI相比,声明式UI最容易理解。在命令式的用户界面中,我们可能会让一个函数在点击按钮时被调用,会根据所发生的事情定期修改用户界面的外观和工作方式。

命令式用户界面会引起各种各样的问题。我们需要跟踪代码处于什么状态,并确保我们的用户界面正确地反映了这种状态。

如果有一个页面有个影响UI的布尔属性,我们有两种状态:布尔值可能是开或关。如果我们有两个布尔函数,A和B,我们现在有四个状态:

A关,B关

A开,B关

A关,B开

A开,B开

如果我们有三个布尔人?还是五个?或者整数、字符串、日期等等?好吧,那么我们就有了更多的复杂性。

如果你曾经使用过一个应用程序,说你有一条未读的消息,不管你试着告诉你是否读过那该死的东西多少次,那就是一个状态问题——这是一个强制性的用户界面问题。

相比之下,声明式UI让我们可以一次告诉iOS应用程序的所有可能状态。我们可能会说,如果我们已登录,则显示欢迎消息,但如果我们已注销,则显示登录按钮。我们不需要编写代码来手动在这两种状态之间移动——这是一种丑陋的、必须的工作方式!

相反,当状态发生变化时,我们让SwiftUI在用户界面布局之间移动。我们已经告诉它根据用户是登录还是注销显示什么,所以当我们更改身份验证状态时,SwiftUI可以代表我们更新UI。

这就是声明性的意思:我们不是让SwiftUI组件手动显示和隐藏,我们只是告诉SwiftUI我们希望它遵循的所有规则,SwiftUI来确保这些规则得到执行。

但SwiftUI并不止于此:它还充当跨平台的用户界面层,可以跨iOS、macOS、tvo甚至watchOS工作。这意味着您现在可以学习一种语言和一种布局框架,然后将代码部署到任何地方。

声明式编程

声明式编程(英语:Declarative programming)是一种编程范式,与命令式编程相对立。它描述目标的性质,让计算机明白目标,而非流程。声明式编程不用告诉计算机问题领域,从而避免随之而来的副作用。而命令式编程则需要用算法来明确的指出每一步该怎么做。

声明式编程通常被看做是形式逻辑的理论,把计算看做推导。声明式编程因大幅简化了并行计算的编写难度,自2009年起备受关注。

声明式语言包包括数据库查询语言(SQLXQuery),正则表达式,逻辑编程,函数式编程和组态管理系统。

声明式编程透过函数、推论规则或项重写(term-rewriting)规则,来描述变量之间的关系。它的语言运行器(编译器解释器)采用了一个固定的算法,以从这些关系产生结果。

声明式编程语言通常用作解决人工智能约束满足问题

相关文章

网友评论

      本文标题:What is SwiftUI?

      本文链接:https://www.haomeiwen.com/subject/uksovktx.html