引子

机缘巧合,好友推荐了一篇好文,读来神清气爽。翻译记录梳理成多篇(原文较长),为今后温故知新。原文需翻墙,喜欢原文的可以阅读原文,ok,废话少说,让我们开始吧~


在现代JS概念术语系列的第一部分,我们将理解函数式编程(functional programming)、响应式编程(reactive programming)和函数响应式变编程(functional reactive programming)。为了达到这个目的,我们将要学习以下关于纯净性(purity),状态性(statefulness
)和无状态性(statelessness),不变性(immutability)和可变性(mutability),命令式(imperative)和声明式(declarative)编程,高阶函数(higher-order function),可观察性(ovservables),FP(functional programming)、RP(reactive programming)和FRP(functional reactive programming)范式

介绍

现代JavaScript在最近几年经历了大规模的扩展且并未表露出一丝放缓的迹象,无数的概念在JS博客和文档中出现,对大部分前端开发者而言仍旧十分陌生。在本系列文章中,我们将学到目前前端开发领域里,中级和高级的概念,并且探索下如何在现代JavaScript中应用它们。

概念

在这篇文章种中,我们将列举对理解函数式编程、响应式编程、函数响应式编程以及它们在JavaScript的应用中至关重要的概念。
你可以直接进入相应的概念,或者顺序阅读并学习它们

总结(译者注:请确保已看完上述概念)

最后,我们将引用《Eloquent JavaScript》第一版中的另一段精彩语录:

“一个学生一动不动地坐在电脑前已经好几个小时了,忧郁的皱着眉。他试图用一个漂亮的解决方案去解决一个困难的问题,但始终没找到正确的方法。Fu-Tzu敲了下他的后脑并大声说「写点什么!」。这个学生开始写了个缺乏优雅的方案。当他写完后,他突然悟出了一个漂亮的解决方案。”
——Marijn Haverbeke, Eloquent JavaScript, 1st Edition, Chapter 6

针对理解函数式编程响应式编程函数响应式编程的必要概念可能都很难掌握,更别说精通了。利用泛型基础来编写代码只是第一步,即使刚开始并不完全可靠。实践会照亮前行的路,也会暴露潜在的问题。