1
zxCoder 2021-02-24 12:00:41 +08:00
感觉只是个噱头 没啥**大的**实用性
|
2
SuperMild 2021-02-24 12:09:44 +08:00
纯函数式写起来爽,但读代码、维护时就比较考验智商了。
|
3
masquerader 2021-02-24 12:11:42 +08:00 1
函数作为参数传递,只是函数式编程的一个很小的特性,即所谓的“高阶函数”,Higher Order Functions 。高阶函数用的得心应手的话已经可以让编程过程流畅愉悦很多了。
OOP 有一整套关于设计的实践,比如“设计模式”之类,对应的函数式也有一整套关于设计的实践,后面你会看到 Functors/Monads 之类的术语,不要看很多装逼书说的必须要懂范畴论之类的扯淡话,找几个靠谱的网站,一本好一点的书就能学透了。 如果你不挑语言的话,看看这篇文章大概了解下 FP 的一些设计模式做个入门,后面把这个网站所有内容翻一遍,FP 你能了解个大概了。 https://fsharpforfunandprofit.com/fppatterns/ |
4
SuperMild 2021-02-24 12:12:15 +08:00
对函数式感兴趣的推荐看看这个 https://fsharpforfunandprofit.com
|
5
mmdsun 2021-02-24 12:34:41 +08:00 via Android 1
《 Functional and Reactive Domain Modeling 》 函数响应式领域建模可以看这个书籍。
框架 Reactive Extensions,Akka,Spring Reactive webflux 。 重点是 Reactive 不是 Functional 。 Reactive 思想可以参考 msdn 文档,最早是微软搞出来的思想 |
6
bignullnull 2021-02-24 13:58:03 +08:00
试试 erlang
|
7
iahu 2021-02-24 14:20:01 +08:00
FP 在实践中的主要作用是,因为遵循了纯函数、状态无副作用等核心规则,从而可使各个模块间的关系独立,状态易追踪,从而提高代码的可替换性和稳健度。
而在过程中会把一个复杂的工程分解成了多个相互独立不依赖的子任务,也可降低工作复杂度。 另外理解了其思想,对模块的依赖关系 /接口设计也有所帮助。 关于上面有人提到的可读性,其实用什么范式写代码都有可能存在可读性差的问题,而使用 FP 范式有可能很好读。FP 对于函数的组织方式是比较讲究的,有很多套路和技术方法专门针对函数组织方式,以使代码很可读、可维护。 |
8
edwardwo 2021-02-24 15:14:38 +08:00
FP 中的一个重要概念就是 data immutability. React, Redux 就是充分发挥 FP 的思想, 由于 React component 中的 state object 一旦建立是不能直接修改(immutability), 要修改, 只能通过 FP 的一些工具(如: Reducer)生成一个新 object, 这样方便页面知道何时需要渲染.
看看 Redux 源码就基本心里有谱了. |
9
Jirajine 2021-02-24 15:24:52 +08:00 via Android
暂时忘掉你所知的 OOP 和命令式的编程语言,然后学一下 haskell 。
|
10
chihiro2014 2021-02-24 15:35:59 +08:00
比如 excel ?
|