文档介绍
APP83|开源实战三(下):借GoogleGua学习三大编程范式中的函数式编程2020-05-13王争设计模式之美进入课程讲述:冯永吉时长13:11大小12.08M现在主流的编程范式主要有三种,面向过程、面向对象和函数式编程。在理论部分,我们已经详细讲过前两种了。今天,我们再借机会讲讲剩下的一种,函数式编程。函数式编程并非一个很新的东西,早在50多年前就已经出现了。近几年,函数式编程越来越被人关注,出现了很多新的函数式编程语言,比如Clojure、Scala、Erlang等。一些非函数式编程语言也加入了很多特性、语法、类库来支持函数式编程,比如Ja、PythRuby、JaScript等。除此之外,GoogleGua也有对函数式编程的增强功能。函数式编程因其编程的特殊性,仅在科学计算、数据处理、统计等领域,才能更好地发挥它的优势,所以,我个人觉得,它并完全替代更加通用的面向对象编程范式。但是,作为一种补充,它也有很大存在、发展和学习的意义。所以,我觉得有必要在专栏里带你一块学习一下。话不多说,让我们正式开始今天的学习吧!到底什么是函数式编程?函数式编程的英文翻译是FunctionalProgramming。那到底什么是函数式编程呢?在前面的章节中,我们讲到,面向过程、面向对象编程并没有严格的官方定义。在当时的讲解中,我也只是给出了我自己总结的定义。而且,当时给出的定义也只是对两个范式主要特性的总结,并不是很严格。实际上,函数式编程也是如此,也没有一个严格的官方定义。所以,接下来,我就从特性上来告诉你,什么是函数式编程。严格上来讲,函数式编程中的“函数”,并不是指我们编程语言中的“函数”概念,而是指数学“函数”或者“表达式”(比如,y=f(x))。不过,在编程实现的时候,对于数学“函数”或“表达式”,我们一般习惯性地将它们设计成函数。所以,如果不深究的话,函数式编程中的“