My Blogs
Posts tagged with "模式"
函数式编程模式
Published 2021年11月08日 11:11 by james
模式词汇表1
替代面向对象模式
这一部分会向你展示如何采用函数式语言的特性来替代普通的面向对象模式。这样做通常可以减少我们需要编写的代码数量,从而让我们维护的代码变得更加简洁。
模式1 替代函数式接口
在这一模式中,我们采用原生的函数式特性来替代像Runnable
或Comparator
这样常见的函数式接口。
在这一部分中,我们引入了两个基本的函数式特性。
- 第一个特性是高阶函数(higher-order function
),它允许我们将函数作为头等数据进行传递。
- 第二个特性是匿名函数,它允许我们编写快捷的一次性函数,而无需为其指定函数名。
通过将这两个特性相结合,我们可以用一种非常简洁的方式来替代大多数的函数式接口实例。
模式2 替代承载状态的函数式接口
我们采用这种模式来替代那些需要承载某些状态信息的函数式接口实例,为此我们引入了一个新的特性: 闭包。闭包可以将某个函数和某些状态进行打包传递。
模式3 替代命令模式
替代命令模式将行为封装于某个对象之中。
在这一模式中,我们将了解如何使用在前两种模式中所介绍的技术来替代面向对象版本的命令模式。 …