知识卡片
函数范式三特征:模块化、抽象化、可组合
内容
Ken Scambler 认为函数范式的主要特征是模块化、抽象化、可组合,它们帮助我们编写“简单”的程序。①模块化:以“函数”为核心,要求函数均为无副作用的纯函数——推断函数功能时无须考虑其所处上下文,形成清晰隔离边界,使模块可轻易替换;②抽象化:函数本质是把输入类型转换为输出类型的转换(transform),是对行为的最高抽象,极端可抽象为 f(x)=y;③可组合:核心要素代数数据类型与纯函数皆为不变、原子,在类型约束下可组合,使模型由简到繁、用组合子表现复杂领域逻辑。发散:函数范式的“简单”不是功能少,而是每个部件(纯函数)可脱离上下文单独理解与替换。
参考来源
- 位置:《解构领域驱动设计》附录A A.3(源文件:_epub-src/OEBPS/034.xhtml)
- 结论依据:原文引用 Scambler 归纳函数范式的三特征并逐一解释。
- 原始内容:Ken Scambler认为函数范式的主要特征为模块化(modularity)、抽象化(abstraction)和可组合(composability)。