97-things-every-programmer-should-know-2: 使用函数式编程

函数式编程因其对参考透明度的强调而备受关注,它能帮助减少错误并简化调试。与命令式编程相比,函数式编程避免了可变状态导致的问题。尽管在某些复杂业务场景下面向对象编程可能更合适,但函数式编程与OOP结合使用能带来显著优势。学习函数式编程可以增强开发者在不同场景下的编程能力。
摘要由CSDN通过智能技术生成

函数式编程重新受到主流社区的关注。部分原因是因为功能范式的新特性能够很好地应对我们的行业向多元化转变。但不是最主要的原因。

应用函数式编程能极大提高编码质量。如果你真正深入理解了函数式编程范式,你的设计将在参考透明度(referential transparency )上上升到更高的层次。

参考透明度是一个非常理想的特性:无论任何时候任何位置,函数对同样的输入总是输出相同的结果。

命令式编程的主要缺陷是可变变量。函数式编程通常缺陷更少,且易于调试,因为定位引入错误值的位置比其他方式去推导错误赋值的特定上下文更容易。

自己的理解:oop中类是由状态和方法组成,方法执行不仅依赖方法入参本身,还依赖当前当前对象的其他状态,这可能导致缺陷的产生,且不易定位。

函数式编程并不适用所有场景。如复杂业务场景下,面向对象的领域对象开发模式(多对象的协作有助于降低复杂性)更适合。

总结

学习函数式编程有助于能应用到其他领域。函数式编程和OOP互相之间能有效补充。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值