Reactive和Functional之间的区别

最近我一直在研究反应式编程,我发现很难找到反应式和功能反应之间区别的很好的描述。

简单地说,反应式编程是使用函数方法/范式实现的,而不是使用声明式或OO范式?


功能反应规划(FRP)是一种具有特定语义的特定编程模型。 (实际上,有两种变体,有时称为“经典FRP”和“箭头FRP”)。我在“什么是(功能)反应式编程?”的答案中给出了一个总结。 正如我在那里所说的那样,对我来说,两个关键属性一直是(a)精确和简单的外延和(b)连续的时间。 我很遗憾这种模式被称为“功能性反应式编程”,原因如下:

  • 这个名字省略了“时间”,时间是我的核心。
  • 术语“功能性”具有非常小的特定/明确含义。 我更喜欢Peter Landin的建议替代“外延”。 (请参阅本博客评论中的引用和参考。)
  • 人们很容易错误地认为他们知道这个词的含义,因为他们知道这三个词中每一个的含义(或多或少)。
  • 为了描述性和准确性,我更喜欢术语“外延连续时间编程”(Jake McArthur在谈话中提出的建议),而不是“功能性反应性编程”。

    我在博客文章早期启发和功能性反应式编程的新方向上写了一篇关于FRP起源的短文。


    FRP是函数式编程(基于一切都是纯函数的思想的编程范式)和反应式编程范式(建立在所有东西都是流(观察者和可观察哲学)的观点之上)的组合。 它应该是世界上最好的。

    两者的定义给出了两者之间更明确的区别。

    链接地址: http://www.djcxy.com/p/47711.html

    上一篇: The difference between Reactive and Functional

    下一篇: Specification for a Functional Reactive Programming language