现在的很多语言都慢慢的脱离或者说在抵制面向对象编程的这种形式,比如React的类组件到后来hooks的出现,慢慢的转向函数时编程,Vue也是如此,最开始optionsAPI的时候是export default()默认导出一个对象,在对象中编写methods、computed等等,到后面compositionAPI的出现,虽然也是导出一个对象,但是对象里面是一个setup() {}的函数,在这个函数中编写对应的逻辑代码。然后是在Vue3.2版本更新后的setup语法糖,直接<srcipt setup></script>
,甚至都不需要写setup() {}就可以直接在script中编写对一个的代码,慢慢的,逐渐从面向对象转变成函数式编程的。
引用:
Williams表示:“在真正了解函数式编程后,我就不打算再使用其他范式了。”实际上,他在大学期间使用LISP的衍生编程语言Scheme和Racket 时就爱上了函数式编程。“面向对象编程很不错,至今仍有很多人使用。但很多开发人员在接触函数式编程后,就会成为忠实的粉丝。”
当然,面向对象编程和命令式编程仍然是现代软件开发的主要范式,而Haskell和Elm之类的“纯”函数式编程语言在生产代码库中相对较少。但随着编程语言扩展对函数式编程方法的支持,以及软件开发新框架的迭代,函数式编程正迅速通过各种不同的途径进入越来越多的代码库。
《Elm in Action》一书的作者Richard Feldman表示:“所有这些语言都开始支持方便实现函数式风格的功能,几乎每一种语言支持的范式都在增加。”