当前位置:人工智能 > 为什么声明式 API 设计优于命令式设计?

为什么声明式 API 设计优于命令式设计?

  • 发布:2023-09-29 12:17

React 是声明性的。 SQL 也是声明式的。有什么共同点吗? > 作者提供 现在我们的许多应用程序都围绕 API 展开。例如,我们应用程序代码的大部分核心都是通过 API 进行通信的。我们使用可理解的抽象分层构建应用程序。这个抽象层至关重要,因为它帮助我们解决软件的编写方式及其问题。 定义 API 的两种流行方式是命令式和声明式。 SQL 是一种声明式查询语言,而 IMS 和 CODASYL 使用命令式代码查询数据库。需要最常用的编程语言。 然而,在本文中,声明式 API 得到更广泛使用的主要原因之一是它们比命令式 API 使用起来更简洁,并且提供了更好的抽象。 数据模型中的命令式声明 在 SQL 出现之前,IBM 在 1960 年设计了信息管理系统 (IMS),它有一个名为 CODASYL 的分层模型,类似于文档数据库中使用的 JSON 模型。 该模型称为网络模型,它有助于为多对多关系创建数据模型。每条记录都会有多个父记录,我们标记一条记录相对于另一条记录的方式是使用编程语言中的指针而不是外键。 > 来源:Codasyl 型 Schela Forp 自然 La;g’uage 医学记录 如果要获取特定链接的值,则必须从列表的头部开始遍历,一次查看一条记录,直到找到所需的记录。 这种检索数据的方式使开发人员很难进行任何更新或更改,因为他们必须跟踪所有关系和链接的父级,否则他们将找不到所需的数据。 关系模型数据查询有何不同 关系模型使用另一种查询数据的方式。作为开发人员,我们告诉程序“做什么”,而不是“如何做”。因此,查询优化器将自动决定查询的哪些部分以什么顺序执行以及使用哪个索引。 “告诉程序“做什么”,而不是“如何”做。” 声明式方法的好处之一是查询语言使用 API 抽象出客户端的实现细节。这为查询优化器留下了空间,可以在不进行任何查询更改的情况下产生更好的性能并引入更新的功能。 随着越来越多的计算逻辑转移到软件而不是硬件,SQL因其灵活性而变得越来越流行和广泛使用。 让我们看一下 Web 浏览器中声明式 API 和命令式 API 的另一个类比和解释。网络服务示例 让我们举一个使用声明式和命令式方法在 Web 浏览器中处理 DOM 元素的示例。 通常,使用 CSS 是声明性的,而使用 JavaScript 操作 DOM 元素是命令性的。在下面的示例中,您可以了解为什么 CSS 比 JavaScript 更适合查询网络数据。 更改 HTML 标记上“The one who gone away”段落中文本的颜色,如下所示:

    逃走的人

    • article1
    • article2
    • article3
  • 我从错误中学到了什么

    • 子文章
    • 子文章 2
使用 CSS,您的代码将如下所示: li.topClass > p { 颜色:蓝色 } 相对简单,因为它声明了我们要将文本的蓝色应用于其中的元素的模式。不在类名topClass下 标记段不会改变颜色,因为它与声明不匹配。另一方面,使用 JavaScript 操作 DOM 元素将如下所示: 让 liElements = document.getElementsByTagName("li"); for(let i = 0; i< liElements.length; i++) { if(liElements[i].className == "topClass") { const Children = liElements[i] .cildNodes; } for(let j = 0; j

相关文章

最新资讯

热门推荐