到目前为止,我们已经了解了函数式编程的基本构造块。是时候带他们兜兜风,参观一下专注于功能的软件设计世界了。
首先,我们将研究一种改变我们思维模式的方法,从以命令方式编写的面向对象编程 ( OOP )转变为以功能为中心的设计。为此,我们需要了解如何将输入数据转换为所需的输出数据,最好借助现有的高阶函数。然后,我们将看看不要重复自己 ( DRY )原则,以及我们如何使用功能操作(部分应用、currying 和功能组合)从我们的代码中移除某些类型的重复。然后,我们将看看函数和类之间的关系,如果我们想将设计从以函数为中心切换到面向对象,我们如何将纯函数分组到类中,以及我们如何将一个类变成一组纯函数。
有了所有这些技术,我们将学习测试驱动开发,以及如何通过使用纯函数来简化它。
本节将涵盖以下章节: