本文要点
- 函数式编程技术通过以可组合的方式构造关注点来帮助我们编写代码。
- 可扩展效果灵活地分离了效果及其实现。
- 在纯函数语言论坛中,可扩展效果是函数式编程领域的一个热门话题,它的支持者声称这是构造程序的正确方法。
- 前端开发越来越多地采用函数式编程实践,更多地依赖于纯函数、promises、流和其他构造。可扩展效果正在进入JavaScript开发领域。
- William Heslam介绍了在JavaScript中如何使用可扩展效果有趣又有益。
William Heslam是Ecotricity的高级JavaScript开发人员。最近,他在Lambda Days 2020上做了一场 演讲,内容是关于利用可扩展效果进行副作用建模以及由此带来的测试方面的好处。
Heslam的演讲围绕着一个具体的例子展开,那是一个处理待办列表的应用程序后端(即 Todo MVC基准应用程序),下面是相应的API:
// 监听请求
const update = api.put('/update',
// 写入数据库
(request, response) => database.batchWrite(
'todos',
request.items.filter(hasTitle)
)
// 响应客户端
.then(result => response({
code: 200,
added: request.items.filter(hasTitle),
notAdded: request.items.filter(hasNoTitle)
.map(item => ({ reason: 'NEEDS_TITLE', item }))
})
))
原文链接:【https://www.infoq.cn/article/UUqNfWEN4QGmIdEgGMbs】。未经作者许可,禁止转载。