gpt4 book ai didi

javascript - React.js 中声明式和命令式的区别?

转载 作者:行者123 更新时间:2023-12-03 12:54:23 25 4
gpt4 key购买 nike

最近我研究了很多关于 Facebook JavaScript 库 React.js 的功能和使用方法。当谈到它与 JavaScript 世界其他部分的差异时,通常会提到声明式命令式两种编程风格。

两者有什么区别?

最佳答案

声明式风格,就像 React 所具有的那样,允许您通过说“它应该看起来像这样”来控制应用程序中的流程和状态。命令式风格扭转了这一局面,并允许您通过说“这是您应该做的”来控制您的应用程序。

声明式的好处是您不会陷入表示状态的实现细节中。您委派了保持应用程序 View 一致的组织组件,因此您只需担心状态。

想象一下你有一个管家,他是一个框架的隐喻。你想做晚饭。在命令式的世界里,你会一步步告诉他们如何做晚餐。您必须提供这些说明:

Go to the kitchen
Open fridge
Remove chicken from fridge
...
Bring food to the table

在声明式世界中,您只需描述您想要的内容

I want dinner with chicken.

如果你的管家不知道如何做鸡肉,那么你就无法以声明式方式进行操作。就像如果 Backbone 不知道如何变异自己来完成某项任务一样,你不能只是告诉它执行该任务。 React 能够是声明性的,因为它“知道如何做鸡”,例如。与 Backbone 相比,Backbone 只知道如何与厨房交互。

能够描述状态可以大大减少错误的表面积,这是一个好处。另一方面,您在事情发生的方式上可能缺乏灵 active ,因为您委托(delegate)或抽象了实现状态的方式。

关于javascript - React.js 中声明式和命令式的区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33655534/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com