2023-09-14 · Functional Programming

为什么纯函数在臃肿的项目里更划算

从测试、缓存到调试,看看没有副作用的函数带来的实际好处。

前言

这篇文章不谈函数式编程的理论,而是用真实项目的例子说明纯函数如何减少隐藏的 bug、让重构更安全,也让缓存变得顺理成章。

现场笔记

在处理 Functional Programming 问题的过程中,反复出现的几个模式:

  • 简单的版本撑过了每次重构,聪明的版本没有。
  • 边做边写的文档,比事后补写的耐用得多。
  • 同一个问题第二次出现时,它就已经是一个模式了——给它起个名字。

可以直接抄的检查清单

  • 问题可以用一条命令复现。
  • 修复附带一个没有它就会失败的测试。
  • 作者本人之外的人也在自己的机器上跑过。

写在最后

写下未来那个自己真正会读的短版本——这就是全部的诀窍。